.gv-hero{background:linear-gradient(160deg,#12291d,#1d4a33 58%,#2c6e49);color:#f7f3e8;padding:64px 20px 46px;text-align:center}.gv-hero h1{font-family:Fraunces,serif;font-size:clamp(2.4rem,6vw,4.2rem);line-height:1.04;margin:.18em auto .3em;max-width:16ch}.gv-hero-sub{max-width:640px;margin:0 auto;font-size:1.08rem;line-height:1.6;color:#e8e2cf}.gv-hero-chips{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:22px}.gv-hchip{background:#f7f3e81f;border:1px solid rgba(247,243,232,.35);color:#f7f3e8;border-radius:999px;padding:7px 14px;font-size:.86rem;backdrop-filter:blur(4px)}.gv-viz{background:#f3efe3;padding:34px 16px 10px}.gv-layout{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:402px 1fr;gap:22px;align-items:start}.gv-panel{background:#fffdf7;border:1px solid #e3dcc4;border-radius:28px;padding:24px 22px 22px;box-shadow:0 18px 44px #12291d1a}.gv-panel-title{font-family:Fraunces,serif;font-size:1.72rem;line-height:1.12;margin:.1em 0 .35em;color:#12291d}.gv-block-label{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:#7a6c3f;font-weight:700;margin:20px 0 9px}.gv-block-label.light{color:#cdbd85}.gv-presets{display:grid;gap:9px}.gv-preset{text-align:left;background:#fbf8ee;border:1.5px solid #e7dfc6;border-radius:18px;padding:12px 14px;cursor:pointer;font:inherit;display:grid;gap:2px;transition:border-color .2s,transform .2s,box-shadow .2s;width:100%}.gv-preset:hover{transform:translateY(-1px);box-shadow:0 8px 20px #12291d1a}.gv-preset.is-active{border-color:#c99700;background:#fdf6dd}.gv-preset-name{font-family:Fraunces,serif;font-weight:600;font-size:1.02rem;color:#12291d}.gv-preset-tag{font-size:.85rem;color:#5c5540;line-height:1.35}.gv-preset-meta{font-size:.78rem;font-weight:700;color:#8a6d00;letter-spacing:.02em}.gv-areas,.gv-moments{display:flex;gap:8px;flex-wrap:wrap}.gv-area,.gv-moment{border:1.5px solid #d8cf9f;background:#fff;color:#3d4a2a;border-radius:999px;padding:7px 13px;font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;transition:all .18s}.gv-area.is-on,.gv-moment.is-on{background:#1d4a33;color:#f7f3e8;border-color:#1d4a33}.gv-list{margin-top:12px;display:grid;gap:8px;max-height:392px;overflow:auto;padding-right:2px;scrollbar-width:thin}.gv-loading{color:#6b6248;font-size:.92rem;padding:10px 2px}.gv-stop-row{display:flex;gap:11px;align-items:center;width:100%;min-width:0;text-align:left;background:#fff;border:1.5px solid #eae2c8;border-radius:18px;padding:9px 10px;cursor:pointer;font:inherit;transition:border-color .18s,box-shadow .18s}.gv-stop-row:hover{box-shadow:0 6px 16px #12291d17}.gv-stop-row.is-selected{border-color:#1d4a33;box-shadow:0 0 0 2px #1d4a332e}.gv-stop-thumb{width:54px;height:54px;border-radius:14px;object-fit:cover;flex:none;background:#e8e2cf}.gv-stop-txt{flex:1;min-width:0}.gv-stop-name{display:block;font-weight:700;color:#12291d;font-size:.97rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-stop-meta{display:block;font-size:.8rem;color:#6b6248;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-stop-add{flex:none;width:34px;height:34px;border-radius:50%;border:1.5px solid #1d4a33;background:#fff;color:#1d4a33;font-size:1.15rem;line-height:1;display:grid;place-items:center;transition:all .18s}.gv-stop-row.is-in .gv-stop-add{background:#c99700;border-color:#c99700;color:#fff}.gv-moment-note{font-size:.85rem;color:#6b6248;line-height:1.5;margin:10px 0 0}.gv-summary{background:#eef4e6;border:1px solid #d5e2bd;border-radius:18px;padding:13px 15px;margin-top:20px;font-size:.93rem;color:#24402c;line-height:1.55;min-height:56px}.gv-summary strong{color:#12291d}.gv-preview-btn{width:100%;margin-top:14px;font-size:1.02rem;padding:14px;border-radius:16px}.gv-start{width:100%;margin-top:9px;font-size:1.02rem;padding:14px;border-radius:16px;background:#1d4a33;color:#f7f3e8}.gv-fineprint{font-size:.8rem;color:#8a8062;text-align:center;margin:10px 4px 0;line-height:1.45}.gv-main{min-width:0}.gv-stage{position:relative;border-radius:28px;overflow:hidden;min-height:560px;background:#1d4a33;box-shadow:0 22px 50px #12291d38}.gv-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.1s ease}.gv-scene.is-on{opacity:1}.gv-grade{position:absolute;inset:0;pointer-events:none;transition:background 1s ease;z-index:2}#gv-viz[data-moment=morning] .gv-grade,.gv-preview[data-moment=morning] .gv-grade{background:linear-gradient(180deg,#fff4c824,#78b4780d 55%,#0a1e122e)}#gv-viz[data-moment=golden] .gv-grade,.gv-preview[data-moment=golden] .gv-grade{background:linear-gradient(200deg,#ffa64257,#d65a1e24 52%,#280e284d)}#gv-viz[data-moment=rain] .gv-grade,.gv-preview[data-moment=rain] .gv-grade{background:linear-gradient(180deg,#466e964d,#1e3c3229 55%,#06181457);backdrop-filter:saturate(1.25)}.gv-route{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}#gv-line{filter:drop-shadow(0 2px 5px rgba(0,0,0,.45))}.gv-pins{position:absolute;inset:0;z-index:4}.gv-pin{position:absolute;transform:translate(-50%,-50%);width:26px;height:26px;border-radius:50%;border:2px solid #fff;background:#1d4a33;color:#fff;font-size:.72rem;font-weight:800;display:grid;place-items:center;cursor:pointer;box-shadow:0 3px 10px #0006;transition:transform .18s,background .18s;padding:0}.gv-pin:hover{transform:translate(-50%,-50%) scale(1.18)}.gv-pin.is-in{background:#c99700}.gv-pin.is-selected{background:#e9c46a;color:#12291d;transform:translate(-50%,-50%) scale(1.3);z-index:5}.gv-pin-dot{width:9px;height:9px;border-radius:50%;background:#fff}.gv-pin.is-in .gv-pin-dot{display:none}.gv-stage-chip{position:absolute;top:14px;left:14px;z-index:6;background:#0a1a119e;color:#f3ecd4;border:1px solid rgba(247,243,232,.35);backdrop-filter:blur(6px);border-radius:999px;padding:7px 13px;font-size:.8rem}.gv-stage-count{position:absolute;top:14px;right:14px;z-index:6;background:#0a1a119e;color:#f3ecd4;border:1px solid rgba(247,243,232,.35);backdrop-filter:blur(6px);border-radius:999px;padding:7px 13px;font-size:.8rem}@media(max-width:640px){.gv-stage-chip{font-size:.68rem;padding:5px 10px;max-width:52%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-stage-count{font-size:.68rem;padding:5px 10px;max-width:40%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.gv-stop-panel{position:absolute;z-index:7;left:16px;right:16px;bottom:16px;background:#fffdf7f7;border-radius:24px;padding:18px 18px 15px;box-shadow:0 18px 44px #00000059;max-height:78%;overflow:auto}.gv-sp-x{position:absolute;top:10px;right:12px;border:none;background:none;font-size:1.5rem;line-height:1;color:#6b6248;cursor:pointer}.gv-sp-name{font-family:Fraunces,serif;font-size:1.42rem;color:#12291d;margin:0 26px 2px 0;line-height:1.15}.gv-sp-meta{font-size:.88rem;color:#6b6248;margin:0 0 10px}.gv-sp-chips{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:11px}.gv-sp-chip{background:#eef4e6;border:1px solid #d5e2bd;color:#24402c;border-radius:999px;padding:5px 11px;font-size:.79rem;font-weight:600}.gv-sp-label{font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;color:#7a6c3f;font-weight:700;margin:13px 0 7px}.gv-harvest{display:flex;gap:9px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.gv-hcard{flex:none;width:118px;border-radius:16px;overflow:hidden;background:#fbf8ee;border:1px solid #eae2c8}.gv-hcard img{width:100%;height:74px;object-fit:cover;display:block}.gv-hcard span{display:block;padding:7px 9px;font-size:.78rem;font-weight:700;color:#24402c;line-height:1.25}.gv-hcard small{display:block;padding:0 9px 8px;font-size:.68rem;color:#8a8062;font-weight:400;line-height:1.3}.gv-finds{display:flex;gap:7px;flex-wrap:wrap}.gv-find{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1.5px solid #e7dfc6;border-radius:999px;padding:4px 11px 4px 4px;font-size:.8rem;font-weight:600;color:#3d4a2a}.gv-find img{width:24px;height:24px;border-radius:50%;object-fit:cover}.gv-find.is-found{border-color:#c99700;background:#fdf6dd;color:#6d5200}.gv-sp-note{font-size:.84rem;color:#6b6248;line-height:1.5;margin:11px 0 0}.gv-sp-pair{font-size:.88rem;color:#24402c;background:#fdf6dd;border:1px solid #ecd27a;border-radius:13px;padding:9px 12px;margin-top:11px;line-height:1.45}.gv-sp-actions{display:flex;gap:9px;margin-top:14px;flex-wrap:wrap}.gv-sp-actions .btn{border-radius:13px;padding:11px 16px}.gv-timeline-wrap{background:#12291d;border-radius:0 0 28px 28px;margin-top:-14px;padding:26px 18px 16px}.gv-stage{border-radius:28px 28px 0 0}.gv-timeline{display:flex;gap:9px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}.gv-timeline-empty{color:#b9ac83;font-size:.9rem;margin:2px 0 6px}.gv-tchip{flex:none;display:inline-flex;align-items:center;gap:9px;background:#f7f3e814;border:1.5px solid rgba(247,243,232,.28);color:#f7f3e8;border-radius:999px;padding:6px 14px 6px 6px;font:inherit;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .18s}.gv-tchip img{width:30px;height:30px;border-radius:50%;object-fit:cover}.gv-tchip .gv-tn{background:#c99700;color:#fff;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:.74rem;font-weight:800}.gv-tchip.is-selected{border-color:#e9c46a;background:#e9c46a29}.gv-fg{background:#f3efe3;padding:38px 16px 8px}.gv-fg-head,.gv-fg-grid,.gv-credit{max-width:1240px;margin-left:auto;margin-right:auto}.gv-fg h2{font-family:Fraunces,serif;font-size:clamp(1.7rem,3.4vw,2.4rem);color:#12291d;margin:.12em 0 .25em}.gv-fg-sub{max-width:720px;color:#5c5540;line-height:1.55;margin:0}.gv-fg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(228px,1fr));gap:16px;margin-top:22px}.gv-fcard{background:#fffdf7;border:1px solid #e3dcc4;border-radius:24px;overflow:hidden;box-shadow:0 10px 26px #12291d14;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.gv-fcard:hover{transform:translateY(-3px);box-shadow:0 16px 34px #12291d24}.gv-fcard-photo{position:relative;height:158px;overflow:hidden}.gv-fcard-photo img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.88);transition:filter .4s,transform .6s}.gv-fcard:hover .gv-fcard-photo img{transform:scale(1.05)}.gv-fcard.is-found .gv-fcard-photo img{filter:saturate(1.12)}.gv-fcard-badge{position:absolute;top:10px;left:10px;background:#0a1a11a8;color:#f3ecd4;border-radius:999px;padding:5px 11px;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(4px)}.gv-fcard.is-found .gv-fcard-badge{background:#c99700;color:#fff}.gv-fcard-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:5px;flex:1}.gv-fcard-name{font-family:Fraunces,serif;font-size:1.14rem;color:#12291d;margin:0}.gv-fcard-clue{font-size:.87rem;color:#5c5540;line-height:1.45;margin:0;flex:1}.gv-fcard-grows{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:#8a6d00;font-weight:700;margin:0}.gv-fcard-btn{margin-top:9px;border-radius:13px;padding:11px;font:inherit;font-weight:700;cursor:pointer;border:1.5px solid #1d4a33;background:#1d4a33;color:#f7f3e8;transition:all .18s}.gv-fcard-btn.is-confirm{background:#c99700;border-color:#c99700;color:#fff}.gv-fcard-btn.is-found{background:#fff;color:#8a6d00;border-color:#c99700}.gv-fcard-empty{grid-column:1/-1;background:#fffdf7;border:1px dashed #cfc49a;border-radius:20px;padding:22px;color:#5c5540;line-height:1.55}.gv-credit{font-size:.78rem;color:#8a8062;margin-top:18px;line-height:1.5}.gv-g2t-sec{background:linear-gradient(150deg,#1d4a33,#12291d);color:#f7f3e8;padding:44px 16px;text-align:center}.gv-g2t-sec h2{font-family:Fraunces,serif;font-size:clamp(1.7rem,3.4vw,2.4rem);color:#f7f3e8;margin:.12em auto .25em;max-width:22ch}.gv-g2t-sub{max-width:720px;color:#e8e2cf;line-height:1.6;margin:0 auto}.gv-g2t-list{max-width:900px;margin:20px auto 0;display:grid;gap:10px;text-align:left}.gv-g2t-item{background:#f7f3e814;border:1px solid rgba(201,162,90,.65);border-radius:16px;padding:13px 16px;line-height:1.55}.gv-g2t-item strong{color:#e9c46a}.gv-how{background:#f3efe3;padding:44px 16px 64px;text-align:center}.gv-how h2{font-family:Fraunces,serif;font-size:clamp(1.7rem,3.4vw,2.4rem);color:#12291d;margin:.12em 0 22px}.gv-steps{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;text-align:left}.gv-step{background:#fffdf7;border:1px solid #e3dcc4;border-radius:22px;padding:20px}.gv-step-n{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#c99700;color:#fff;font-weight:800;margin-bottom:9px}.gv-step h3{font-family:Fraunces,serif;color:#12291d;margin:0 0 6px}.gv-step p{color:#5c5540;line-height:1.55;margin:0;font-size:.94rem}.gv-final{max-width:1100px;margin:26px auto 0;background:linear-gradient(150deg,#1d4a33,#12291d);color:#f7f3e8;border-radius:28px;padding:36px 22px}.gv-final h2{color:#f7f3e8;margin:0 0 6px}.gv-final p{color:#d9d2b8;margin:0 0 16px}.gv-modal{position:fixed;inset:0;z-index:80;background:#0a160ea8;display:grid;place-items:center;padding:18px}.gv-modal[hidden]{display:none}.gv-modal-card{position:relative;background:#fffdf7;border-radius:26px;max-width:440px;width:100%;padding:30px 26px;box-shadow:0 30px 70px #0006}.gv-modal-card h3{font-family:Fraunces,serif;font-size:1.5rem;color:#12291d;margin:.1em 0 .3em}.gv-modal-card p{color:#5c5540;line-height:1.55}.gv-modal-x{position:absolute;top:10px;right:14px;border:none;background:none;font-size:1.7rem;color:#6b6248;cursor:pointer}.gv-gate-actions{display:grid;gap:9px;margin-top:16px}.gv-gate-actions .btn{border-radius:14px;padding:13px;text-align:center}.gv-preview{position:fixed;inset:0;z-index:90;background:#0a1a11;overflow:hidden}.gv-preview[hidden]{display:none}.gv-pv-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1s ease}.gv-pv-scene.is-on{opacity:1}.gv-pv-scene.is-zoom{animation:gvkb 7s ease forwards}@keyframes gvkb{0%{transform:scale(1)}to{transform:scale(1.09)}}.gv-pv-shade{position:absolute;inset:0;background:linear-gradient(0deg,#06120ad1,#06120a1f 46%,#06120a4d);z-index:3}.gv-preview .gv-grade{z-index:2}.gv-pv-x{position:absolute;top:16px;right:18px;z-index:8;width:44px;height:44px;border-radius:50%;border:1px solid rgba(247,243,232,.4);background:#0a1a118c;color:#f7f3e8;font-size:1.5rem;cursor:pointer;backdrop-filter:blur(4px)}.gv-pv-caption{position:absolute;left:22px;right:22px;bottom:96px;z-index:6;color:#f7f3e8}.gv-pv-kicker{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:#e9c46a;font-weight:700;margin:0 0 4px}.gv-pv-name{font-family:Fraunces,serif;font-size:clamp(1.9rem,5.4vw,3.2rem);line-height:1.05;margin:0 0 6px;text-shadow:0 3px 22px rgba(0,0,0,.5)}.gv-pv-meta{font-size:1rem;color:#e8e2cf;margin:0;line-height:1.5;max-width:560px}.gv-pv-stamps{display:flex;gap:8px;margin-top:14px}.gv-pv-stamp{width:34px;height:34px;border-radius:50%;border:2px dashed rgba(247,243,232,.65);display:grid;place-items:center;font-size:.8rem;font-weight:800;color:#f7f3e8bf;transition:all .5s}.gv-pv-stamp.is-filled{border:2px solid #c99700;background:#c99700;color:#fff;transform:scale(1.08)}.gv-pv-controls{position:absolute;left:22px;right:22px;bottom:26px;z-index:6;display:flex;align-items:center;gap:14px}.gv-pv-btn{background:#f7f3e81f;border:1px solid rgba(247,243,232,.45);color:#f7f3e8;border-radius:999px;padding:10px 20px;font:inherit;font-weight:700;cursor:pointer;backdrop-filter:blur(4px)}.gv-pv-btn:disabled{opacity:.35;cursor:default}.gv-pv-progress{flex:1;display:flex;gap:6px}.gv-pv-seg{flex:1;height:4px;border-radius:2px;background:#f7f3e847;overflow:hidden}.gv-pv-seg i{display:block;height:100%;width:0;background:#e9c46a}.gv-pv-seg.is-done i{width:100%}.gv-pv-seg.is-now i{animation:gvseg 5.6s linear forwards}@keyframes gvseg{0%{width:0}to{width:100%}}.gv-pv-end{position:absolute;inset:0;z-index:7;display:grid;place-items:center;padding:20px;background:#08140c73}.gv-pv-end[hidden]{display:none}.gv-pv-end>*{max-width:520px}.gv-pv-end{text-align:center;color:#f7f3e8}.gv-pv-end h3{font-family:Fraunces,serif;font-size:clamp(1.8rem,4.6vw,2.7rem);margin:.15em 0 .25em}.gv-pv-end p{color:#e8e2cf;line-height:1.55}.gv-pv-end-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}.gv-pv-end-actions .btn{border-radius:14px;padding:13px 20px}.gv-pv-open{background:#f7f3e81f;color:#f7f3e8;border:1px solid rgba(247,243,232,.5)}@media(max-width:960px){.gv-layout{grid-template-columns:1fr}.gv-main{order:-1}.gv-stage{min-height:480px}.gv-list{max-height:300px}.gv-steps{grid-template-columns:1fr}.gv-stop-panel{left:10px;right:10px;bottom:10px;padding:15px 15px 12px}.gv-pv-caption{bottom:104px}}@media(prefers-reduced-motion:reduce){.gv-pv-scene.is-zoom,.gv-pv-seg.is-now i{animation:none}.gv-pv-seg.is-now i{width:100%}*{scroll-behavior:auto!important}}
