:root{--orange:#ff6a00;--orange-dark:#913c00;--gold:#ffb500;--ink:#28313d;--muted:#77818c;--paper:#fffaf5;--line:#e9e6e0;--card:#fff;--soft:#f6f4f0;--shadow:0 12px 32px rgba(39,33,25,.045)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);font-family:Poppins,system-ui,-apple-system,sans-serif;color:var(--ink);font-size:14px}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ffa950;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.shell{min-height:100vh;display:grid;grid-template-columns:256px minmax(0,1fr)}.sidebar{background:#fff;border-right:1px solid var(--line);height:100vh;position:sticky;top:0;display:flex;flex-direction:column;padding:32px 21px 17px}.brand{display:flex;gap:13px;align-items:center;margin:0 7px 41px}.brandmark{font-size:31px;letter-spacing:-3px;color:var(--orange);font-weight:800;line-height:1}.branddot{color:var(--gold)}.brandcopy{display:flex;flex-direction:column}.brandcopy b{font-size:14px;line-height:1.5}.brandcopy small{font-size:11px;color:var(--muted)}.side-caption{font-size:10px;font-weight:700;color:#a1a8ae;letter-spacing:1.4px;margin:0 14px 13px}.side-nav{display:flex;flex-direction:column;gap:5px}.navlink{display:flex;align-items:center;gap:12px;border-radius:12px;padding:12px 15px;color:#636e7a;font-weight:600;font-size:13px;transition:background .15s}.navlink svg{width:18px;height:18px}.navlink:hover{background:#f8f4ee}.navlink.active{color:#d85800;background:#fff0e2}.navlink.active svg{color:var(--orange)}.nav-count{margin-left:auto;color:#fff;background:var(--orange);padding:1px 7px;border-radius:999px;font-size:10px}.side-spacer{flex:1}.side-note{background:linear-gradient(155deg,#fff5e6,#ffebe1);border-radius:19px;padding:18px;position:relative;overflow:hidden}.side-note:after{content:'';position:absolute;right:-31px;top:-31px;width:105px;height:105px;border:15px solid #ffddba;border-radius:50%;opacity:.48}.side-note-icon{font-size:28px;color:var(--orange)}.side-note b{font-size:13px;position:relative;z-index:1}.side-note p{color:#8d7668;font-size:11px;line-height:1.8;margin:9px 0 14px}.side-note button{background:#fff;border:0;border-radius:9px;padding:9px 12px;font-weight:700;color:#a44f0a;font-size:11px}.side-footer{font-size:10px;color:#acb1b6;text-align:center;padding-top:22px}.main{min-width:0}.topbar{height:91px;border-bottom:1px solid #f2ede7;background:#fffdfa;display:flex;align-items:center;gap:18px;padding:0 clamp(20px,4.8vw,72px);position:sticky;top:0;z-index:5}.topsearch-wrap{height:45px;display:flex;align-items:center;gap:13px;background:#f7f5f1;border:1px solid #f2efea;border-radius:12px;padding:0 16px;width:min(640px,70%);margin-right:auto}.search-icon{stroke:#95a0a7;stroke-width:2;fill:none;width:19px;height:19px;flex:none}.topsearch-wrap input{border:0;outline:0;background:transparent;width:100%;font-size:12px;min-width:0}.topsearch-wrap input::placeholder{color:#9ca4ac}.shortcut{color:#a6a9ae;border:1px solid #e7e5e0;border-radius:5px;font-size:10px;padding:3px 5px;white-space:nowrap}.top-actions{display:flex;align-items:center;gap:16px}.demo-pill{display:flex;align-items:center;gap:7px;background:#eef7f0;color:#4f8161;padding:7px 12px;border-radius:40px;font-size:11px;font-weight:600;white-space:nowrap}.demo-dot{width:7px;height:7px;background:#68b57f;border-radius:50%}.profile-btn{border:2px solid #fff;border-radius:50%;height:38px;width:38px;background:#ffe4c9;color:#b35e20;font-weight:700;box-shadow:0 1px 7px #ddd}.announcement{margin:23px clamp(20px,4.8vw,72px) 0;background:#fef6e7;border:1px solid #ffecd0;border-radius:11px;color:#876d45;font-size:11px;line-height:1.6;padding:11px 16px;display:flex;align-items:start;gap:10px}.announcement span{font-size:16px}.page{padding:27px clamp(20px,4.8vw,72px) 68px;max-width:1580px;margin:auto}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;text-transform:uppercase;color:#dc6808}.h1{font-size:clamp(26px,3vw,38px);letter-spacing:-1.3px;line-height:1.26;margin:9px 0 10px;color:#28313d}.muted{color:var(--muted)}.intro{color:#7f8790;font-size:13px;max-width:620px;line-height:1.9}.hero{background:linear-gradient(115deg,#fff0de,#ffe6c9 65%,#ffcc92);border-radius:23px;min-height:280px;display:grid;grid-template-columns:1.4fr .75fr;overflow:hidden;position:relative;padding:37px 40px}.hero:after{content:'';width:410px;height:410px;border:42px solid #ffe9cc;position:absolute;border-radius:100%;right:-130px;bottom:-260px;opacity:.7}.hero h1{font-size:clamp(27px,3.1vw,42px);line-height:1.17;letter-spacing:-1.1px;max-width:630px;margin:12px 0;color:#613216}.hero p{font-size:12px;line-height:1.85;color:#906e52;max-width:510px}.hero-actions{display:flex;gap:11px;margin-top:22px;flex-wrap:wrap}.btn{border:1px solid transparent;border-radius:11px;padding:11px 17px;background:#fff;color:#a74c07;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .15s,box-shadow .15s}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #9b5a2522}.btn-primary{background:var(--orange);color:#fff}.btn-outline{background:transparent;border:1px solid #e7c7a9;color:#884d28}.btn-quiet{border:1px solid #ece6de;color:#675c50}.hero-art{position:relative;min-height:204px;z-index:1}.art-circle{width:220px;height:220px;background:#ffb75d;border-radius:50%;position:absolute;top:15px;right:25px;box-shadow:inset -25px -24px 50px #ff9c3690}.art-book{position:absolute;width:156px;height:202px;background:#fffdf7;border:1px solid #ffefda;border-radius:7px 13px 13px 7px;right:70px;top:19px;transform:rotate(10deg);box-shadow:11px 12px 0 #e68425,15px 18px 23px #a44f2450;display:flex;flex-direction:column;align-items:center;justify-content:center}.art-book:before{content:'';position:absolute;left:10px;top:0;bottom:0;border-left:2px solid #ffe7c7}.art-book .art-brand{font-size:24px;font-weight:800;color:#ff7100;letter-spacing:-2px}.art-book .art-line{width:69px;height:4px;border-radius:9px;background:#ffd4ae;margin-top:17px}.art-book .art-line.short{width:44px;margin-top:7px}.art-star{position:absolute;left:15%;top:23%;font-size:49px;color:#ef8d16;transform:rotate(-15deg)}.hero-badge{position:absolute;right:3px;bottom:24px;background:white;padding:13px 15px;border-radius:13px;box-shadow:var(--shadow);font-size:11px;font-weight:700;color:#a45319;transform:rotate(-5deg)}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:20px 0 35px}.stat{background:#fff;border:1px solid #f1ede7;border-radius:13px;padding:16px 18px;display:flex;align-items:center;gap:11px}.stat-icon{height:39px;width:39px;display:grid;place-items:center;background:#fff1e5;color:var(--orange);border-radius:12px;flex:none}.stat-icon svg{height:20px;width:20px}.stat strong{font-size:17px;line-height:1.3;display:block}.stat span{font-size:10px;color:#87919b}.section{margin-top:31px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:18px}.section-head h2{margin:0;font-size:19px;letter-spacing:-.4px}.section-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.textlink{border:0;background:none;color:#dd6b13;font-size:11px;font-weight:700}.categories{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.category{background:#fff;border:1px solid #f0ede8;border-radius:15px;text-align:left;padding:17px 15px;min-height:132px;transition:transform .15s,border .15s}.category:hover{transform:translateY(-3px);border-color:#ffc08a}.category-icon{height:43px;width:43px;display:grid;place-items:center;border-radius:12px;margin-bottom:12px}.category-icon svg{width:23px;height:23px;stroke-width:1.8}.category b{font-size:11px;display:block;line-height:1.5}.category small{font-size:10px;color:#8f969e;display:block;line-height:1.6;margin-top:3px}.tone-coral{background:#ffeadf;color:#e5683c}.tone-gold{background:#fff2d6;color:#c89316}.tone-mint{background:#e3f4e7;color:#5b9f70}.tone-lavender{background:#f0eafb;color:#8b75b5}.tone-sky{background:#e7f1fb;color:#5789bd}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.resource-card{background:#fff;border:1px solid #f1ede8;border-radius:16px;overflow:hidden;transition:transform .16s,box-shadow .16s;min-width:0}.resource-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.resource-cover{height:130px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.resource-cover:after{content:'';position:absolute;width:160px;height:160px;border:21px solid #ffffff70;border-radius:50%;top:-90px;right:-60px}.resource-cover:before{content:'';position:absolute;width:115px;height:115px;border:1px dashed #ffffff85;border-radius:50%;bottom:-55px;left:-33px}.cover-file{width:69px;height:84px;background:#fffefb;border-radius:6px;box-shadow:7px 8px 0 #ffffff67,4px 8px 15px #00000013;position:relative;display:grid;place-items:center}.cover-file:before{content:'';width:26px;height:4px;border-radius:4px;background:currentColor;opacity:.19;position:absolute;bottom:19px}.cover-file svg{height:33px;width:33px}.cover-badge{position:absolute;top:12px;left:12px;background:#ffffffde;border-radius:7px;padding:5px 8px;font-size:10px;font-weight:700;z-index:1}.cover-review{position:absolute;right:10px;bottom:9px;background:#ffffffd8;color:#706454;font-size:9px;padding:4px 8px;border-radius:6px}.resource-body{padding:17px}.resource-meta{color:#ba6b30;font-weight:700;font-size:10px;display:flex;align-items:center;gap:7px}.resource-title{font-size:14px;line-height:1.5;margin:8px 0;min-height:42px}.resource-description{font-size:11px;line-height:1.75;color:#84909a;min-height:39px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:17px;padding-top:13px;border-top:1px solid #f0eee9}.plan-label{font-size:10px;color:#9b8171;background:#fff3eb;border-radius:20px;padding:5px 9px}.icon-btn{display:grid;place-items:center;border:1px solid #eee7df;border-radius:10px;height:34px;width:34px;background:#fff;color:#949ca3}.icon-btn.saved{color:#e66b18;background:#fff2e8;border-color:#ffdbbd}.icon-btn svg{height:17px;width:17px}.card-buttons{display:flex;align-items:center;gap:7px}.card-open{border:0;background:transparent;color:#d5650a;font-size:11px;font-weight:700}.section-titlebar{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:23px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.chip{border:1px solid #eae3db;background:#fff;color:#807b75;padding:8px 11px;border-radius:20px;font-size:11px;font-weight:600}.chip.selected{background:#ff6a00;color:#fff;border-color:#ff6a00}.tool-row{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:20px}.tool-row select{border:1px solid #eae5df;background:#fff;border-radius:10px;padding:10px 15px;color:#555f68;font-size:11px;max-width:100%}.tool-row p{color:#9aa1a9;font-size:11px}.empty{background:#fff;border:1px dashed #e7ded4;border-radius:16px;text-align:center;padding:52px 24px;color:#78838b;grid-column:1/-1}.empty strong{color:var(--ink);display:block;margin-bottom:8px}.route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.route-card{background:#fff;border:1px solid #eee8e2;border-radius:18px;padding:21px;text-align:left;transition:transform .2s}.route-card:hover{transform:translateY(-2px)}.route-visual{width:100%;height:104px;display:flex;align-items:center;justify-content:center;position:relative;border-radius:14px;margin-bottom:20px}.route-visual svg{height:44px;width:44px;z-index:1}.route-visual:before,.route-visual:after{content:'';position:absolute;width:62px;height:62px;border:1px solid currentColor;opacity:.14;border-radius:50%}.route-visual:after{width:96px;height:96px}.route-card h3{font-size:15px;margin:10px 0;line-height:1.4}.route-card p{font-size:11px;color:var(--muted);line-height:1.8;min-height:57px}.route-card small{font-size:10px;color:#d16a16;font-weight:700}.route-detail{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:22px}.route-list{display:flex;flex-direction:column;gap:10px}.route-step{width:100%;background:#fff;border:1px solid #ece6df;border-radius:13px;display:flex;align-items:center;gap:15px;text-align:left;padding:16px}.step-num{width:35px;height:35px;border-radius:12px;background:#fff0df;color:#d65e08;display:grid;place-items:center;font-weight:800;flex:none}.route-step b{display:block;font-size:12px}.route-step small{color:var(--muted);font-size:10px}.route-aside{padding:24px;background:#fff4e9;border-radius:17px;align-self:start;color:#84583b;font-size:12px;line-height:1.9}.info-box{padding:22px;background:#fff;border:1px solid #ece7e0;border-radius:16px;font-size:12px;line-height:1.9;color:#7d858d}.info-box h3{color:var(--ink);font-size:15px;margin-top:0}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}.plan-card{background:#fff;border:1px solid #eee7e0;border-radius:17px;padding:23px;display:flex;flex-direction:column}.plan-card.highlight{border:2px solid var(--orange);padding:22px}.plan-card h3{font-size:17px;margin:0}.price{font-size:26px;font-weight:800;margin-top:15px}.price small{font-size:10px;color:var(--muted);font-weight:500}.plan-card ul{padding:0;list-style:none;margin:22px 0;flex:1}.plan-card li{padding:9px 0;display:flex;gap:9px;color:#6d7882;font-size:11px;line-height:1.7}.plan-card li:before{content:'✓';font-weight:800;color:#4aaa70}.detail-top{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px}.detail-cover{border-radius:17px;min-height:262px;display:flex;justify-content:center;align-items:center}.detail-cover svg{width:85px;height:85px;opacity:.7}.detail-meta{font-size:11px;color:#c36818;font-weight:700}.detail-top h2{font-size:clamp(22px,2.8vw,32px);letter-spacing:-.8px;line-height:1.3;margin:10px 0}.detail-top p{font-size:12px;color:#7c858d;line-height:1.8}.detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:21px 0}.detail-item{border:1px solid #eee8e3;border-radius:11px;padding:13px;font-size:11px;color:#89919a}.detail-item b{display:block;color:#4b555f;margin-top:5px;font-size:12px}.detail-note{font-size:11px;color:#81694f;background:#fff3e6;border-radius:13px;padding:13px;line-height:1.8}.detail-cta{display:flex;gap:10px;margin:17px 0;flex-wrap:wrap}.main-footer{border-top:1px solid #f1ebe6;color:#aab0b5;font-size:10px;padding:22px clamp(20px,4.8vw,72px);display:flex;justify-content:space-between;gap:12px}.modal-backdrop{position:fixed;inset:0;z-index:30;background:#232a31a6;display:flex;align-items:center;justify-content:center;padding:20px}.modal-backdrop[hidden]{display:none}.dialog{background:#fff;border-radius:18px;padding:29px;max-width:460px;width:100%;position:relative;max-height:90vh;overflow:auto}.dialog h2{font-size:19px}.dialog p{font-size:12px;color:#7c858e;line-height:1.9}.dialog-close{position:absolute;right:15px;top:12px;border:0;background:#f6f4f1;border-radius:7px;font-size:22px;width:32px;height:32px}.toast{position:fixed;z-index:50;right:25px;bottom:24px;border-radius:12px;background:#27323a;color:#fff;padding:13px 17px;font-size:11px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);transition:opacity .2s,transform .2s;pointer-events:none}.toast.visible{opacity:1;transform:translateY(0)}.mobile-brand,.mobile-nav{display:none}
@media(max-width:1190px){.categories{grid-template-columns:repeat(4,minmax(0,1fr))}.resource-grid,.route-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:1.4fr .6fr}.art-book{right:8px}.art-circle{right:-25px}.hero-badge{right:-9px}.route-detail{grid-template-columns:1fr}}
@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{display:none}.mobile-brand{display:flex;align-items:baseline;color:var(--orange);font-size:27px;letter-spacing:-2px;font-weight:800;white-space:nowrap}.mobile-brand span{color:var(--gold)}.mobile-brand small{font-size:11px;color:#6e7680;letter-spacing:0;margin-left:8px;font-weight:600}.mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;height:72px;z-index:15;background:#fff;border-top:1px solid #eae5dd;box-shadow:0 -8px 32px #00000008;padding:6px 6px max(6px,env(safe-area-inset-bottom))}.mobile-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#959da4;font-size:9px;font-weight:600}.mobile-nav a svg{width:20px;height:20px}.mobile-nav a.active{color:var(--orange)}.main-footer{padding-bottom:98px}.toast{bottom:88px}.topbar{height:74px}.announcement{margin-top:13px}}
@media(max-width:670px){.topbar{gap:12px;flex-wrap:wrap;height:auto;min-height:105px;padding:10px 17px}.topsearch-wrap{order:3;width:100%;height:39px;margin:0}.shortcut,.demo-pill{display:none}.top-actions{margin-left:auto}.profile-btn{width:34px;height:34px}.announcement{margin:13px 15px 0}.page{padding:20px 15px 50px}.hero{padding:26px 23px;grid-template-columns:1fr;min-height:0}.hero-art{display:none}.hero h1{font-size:28px}.hero p{font-size:11px}.stats{gap:9px;margin:15px 0 27px}.stat{padding:11px;gap:7px}.stat strong{font-size:14px}.stat span{font-size:9px}.stat-icon{height:33px;width:33px}.section-head h2{font-size:17px}.categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.category{padding:13px;min-height:122px}.resource-grid,.route-grid,.plan-grid{grid-template-columns:1fr}.resource-cover{height:115px}.resource-description{min-height:0}.route-card p{min-height:0}.detail-top{grid-template-columns:1fr}.detail-cover{min-height:180px}.detail-list{grid-template-columns:1fr}.main-footer{display:block}.main-footer span{display:block;margin-top:5px}.section-titlebar{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.eco-access-link{color:#a34b12;font-size:12px;font-weight:700;white-space:nowrap;text-decoration:none;border:1px solid #ffdcc1;padding:9px 12px;border-radius:13px;background:#fff5ed}.eco-access-link:hover,.eco-access-link:focus{background:#ffe7d4}.eco-access-link:focus-visible{outline:2px solid #ff6a00;outline-offset:2px}@media(max-width:550px){.eco-access-link{font-size:10px;padding:7px 8px}}
