:root{--color-dark: #0a0e1a;--color-dark-2: #111827;--color-dark-3: #1a2235;--color-accent: #c8a96e;--color-accent-light: #e8c98e;--color-ice: #e8f4f8;--color-snow: #f5f8ff;--color-blue: #1e3a5f;--color-blue-light: #2d5a8e;--color-text: #e2e8f0;--color-text-muted: #94a3b8;--font-serif: "aeonik", "aeonik Fallback", system-ui, sans-serif;--font-sans: "aeonik", "aeonik Fallback", system-ui, sans-serif;--transition: all .4s cubic-bezier(.25, .46, .45, .94);--shadow-glow: 0 0 40px rgba(200, 169, 110, .15)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--color-dark);color:var(--color-text);line-height:1.6;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{text-decoration:none;color:inherit}ul{list-style:none}.container{max-width:1280px;margin:0 auto;padding:0 2rem}.section-label{font-family:var(--font-sans);font-size:.75rem;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:var(--color-accent);display:block;margin-bottom:1rem}.section-title{font-family:var(--font-serif);font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.2;color:#fff}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 2rem;border-radius:2px;font-family:var(--font-sans);font-size:.85rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:var(--transition);border:none}.btn-primary{background:var(--color-accent);color:var(--color-dark)}.btn-primary:hover{background:var(--color-accent-light);transform:translateY(-2px);box-shadow:0 8px 30px #c8a96e66}.btn-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}.btn-outline:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-2px)}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1.5rem 0;transition:var(--transition)}.navbar.scrolled{padding:1rem 0;background:#0a0e1af2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(200,169,110,.15)}.navbar-inner{display:flex;align-items:center;justify-content:space-between}.navbar-logo,.login-logo,.footer-logo,.map-panel-title,.wm-aurora{font-family:var(--font-display, var(--font-sans, system-ui));font-weight:700;line-height:1;letter-spacing:-.025em;color:#fff;display:inline-flex;align-items:baseline;text-decoration:none;white-space:nowrap}.navbar-logo{font-size:1.4rem}.navbar-logo .ski,.login-logo .ski,.footer-logo .ski,.map-panel-title .ski,.wm-aurora .ski{background:linear-gradient(135deg,var(--color-accent-light) 0%,var(--color-accent) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.navbar-logo .dot,.login-logo .dot,.footer-logo .dot,.map-panel-title .dot,.wm-aurora .dot{position:relative;display:inline-block;background:linear-gradient(135deg,var(--color-accent-light) 0%,var(--color-accent) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.navbar-logo .dot:after,.login-logo .dot:after,.footer-logo .dot:after,.map-panel-title .dot:after,.wm-aurora .dot:after{content:"";position:absolute;top:-.18em;left:50%;transform:translate(-50%);width:.22em;height:.22em;border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 .08em #d4af3740}.navbar-logo>span:not(.ski):not(.dot),.login-logo>span:not(.ski):not(.dot),.footer-logo>span:not(.ski):not(.dot),.map-panel-title>span:not(.ski):not(.dot){color:var(--color-accent)}.navbar-nav{display:flex;align-items:center;gap:2.5rem}.navbar-nav a{font-size:.8rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#ffffffbf;transition:var(--transition);position:relative}.navbar-nav a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--color-accent);transition:var(--transition)}.navbar-nav a:hover{color:#fff}.navbar-nav a:hover:after{width:100%}.navbar-cta{display:flex;align-items:center;gap:1rem}.hero{position:relative;height:100vh;min-height:700px;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/images/hero-bg.png);background-image:image-set(url(/images/hero-bg.avif) type("image/avif"),url(/images/hero-bg.webp) type("image/webp"),url(/images/hero-bg.png) type("image/png"));background-size:cover;background-position:center;transform:scale(1.05);transition:transform 8s ease-out}.hero-bg.loaded{transform:scale(1)}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#0a0e1abf,#0a0e1a66,#0a0e1a99)}.hero-content{position:relative;z-index:2;max-width:700px}.hero-label{font-size:.75rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--color-accent);display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;opacity:0;animation:fadeInUp .8s .2s ease forwards}.hero-label:before{content:"";display:block;width:40px;height:1px;background:var(--color-accent)}.hero-title{font-family:var(--font-serif);font-size:clamp(3rem,6vw,5.5rem);font-weight:700;line-height:1.05;color:#fff;margin-bottom:1.5rem;opacity:0;animation:fadeInUp .8s .4s ease forwards}.hero-title em{color:var(--color-accent);font-style:italic}.hero-desc{font-size:1.05rem;color:#ffffffbf;max-width:500px;margin-bottom:2.5rem;opacity:0;animation:fadeInUp .8s .6s ease forwards;font-weight:300}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;opacity:0;animation:fadeInUp .8s .8s ease forwards}.hero-scroll{position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#ffffff80;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;animation:bounce 2s infinite}.hero-scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,transparent,rgba(255,255,255,.5))}.hero-stats{position:absolute;right:4rem;bottom:4rem;z-index:2;display:flex;gap:3rem}.hero-stat{text-align:center;opacity:0;animation:fadeInUp .8s 1s ease forwards}.hero-stat-number{font-family:var(--font-serif);font-size:2.5rem;font-weight:600;color:var(--color-accent);display:block}.hero-stat-label{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:#ffffff80}.search-section{position:relative;z-index:10;margin-top:-3rem}.search-card{background:#111827f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(200,169,110,.2);border-radius:4px;padding:2rem;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:1.5rem;align-items:end}.search-field label{display:block;font-size:.7rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);margin-bottom:.6rem}.search-field select,.search-field input{width:100%;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:2px;padding:.75rem 1rem;color:#fff;font-family:var(--font-sans);font-size:.9rem;transition:var(--transition);outline:none;-webkit-appearance:none}.search-field select:focus,.search-field input:focus{border-color:var(--color-accent);background:#c8a96e0d}.search-field select option{background:var(--color-dark-2)}.section{padding:6rem 0}.section-header{margin-bottom:3.5rem}.section-header-row{display:flex;align-items:flex-end;justify-content:space-between}.resorts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.resort-card{position:relative;border-radius:4px;overflow:hidden;cursor:pointer;background:var(--color-dark-3);transition:var(--transition)}.resort-card:hover{transform:translateY(-6px);box-shadow:0 20px 60px #00000080}.resort-card-image{position:relative;overflow:hidden;aspect-ratio:4/3}.resort-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.25,.46,.45,.94)}.resort-card:hover .resort-card-image img{transform:scale(1.08)}.resort-card-image-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(10,14,26,.7) 0%,transparent 60%)}.resort-card-badge{position:absolute;top:1rem;left:1rem;background:var(--color-accent);color:var(--color-dark);font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .75rem;border-radius:2px}.resort-card-difficulty{position:absolute;top:1rem;right:1rem;display:flex;gap:.3rem}.difficulty-dot{width:8px;height:8px;border-radius:50%}.difficulty-dot.beginner{background:#22c55e}.difficulty-dot.intermediate{background:#3b82f6}.difficulty-dot.advanced{background:#ef4444}.difficulty-dot.expert{background:#1a1a1a;border:1px solid #fff}.resort-card-body{padding:1.25rem;border:1px solid rgba(255,255,255,.06);border-top:none;border-radius:0 0 4px 4px}.resort-card-top-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.resort-card-region{font-size:.7rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);margin-bottom:0}.resort-card-temp{display:flex;align-items:center;gap:.3rem;background:#ffffff12;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:.2rem .6rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.resort-card-temp-icon{font-size:.8rem;line-height:1}.resort-card-temp-value{font-size:.75rem;font-weight:600;color:#e2e8f0;letter-spacing:.02em}.resort-card-name{font-family:var(--font-serif);font-size:1.25rem;color:#fff;margin-bottom:.75rem}.resort-card-meta{display:flex;gap:1.5rem;font-size:.8rem;color:var(--color-text-muted)}.resort-card-meta span{display:flex;align-items:center;gap:.35rem}.resort-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.07)}.resort-card-season{font-size:.75rem;color:var(--color-text-muted)}.resort-card-link{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);display:flex;align-items:center;gap:.4rem;transition:var(--transition)}.resort-card-link:hover{gap:.7rem}.features-strip{background:var(--color-dark-3);border-top:1px solid rgba(200,169,110,.15);border-bottom:1px solid rgba(200,169,110,.15);padding:3rem 0}.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.feature-item{text-align:center;padding:1.5rem 2rem;border-right:1px solid rgba(255,255,255,.07)}.feature-item:last-child{border-right:none}.feature-icon{font-size:2rem;margin-bottom:1rem;display:block}.feature-title{font-family:var(--font-serif);font-size:1.1rem;color:#fff;margin-bottom:.5rem}.feature-desc{font-size:.85rem;color:var(--color-text-muted);line-height:1.6}.scroll-row{display:flex;gap:1rem;overflow-x:auto;padding-bottom:1rem;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) transparent}.scroll-row::-webkit-scrollbar{height:4px}.scroll-row::-webkit-scrollbar-track{background:transparent}.scroll-row::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:2px}.instructor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.instructor-card{background:var(--color-dark-3);border:1px solid rgba(255,255,255,.06);border-radius:4px;overflow:hidden;transition:var(--transition)}.instructor-card:hover{border-color:#c8a96e4d;transform:translateY(-2px)}.instructor-card-img{position:relative;height:160px;overflow:hidden}.instructor-card-img img{width:100%;height:100%;object-fit:cover}.instructor-type-badge{position:absolute;top:.75rem;left:.75rem;background:#0a0e1ad9;border:1px solid rgba(200,169,110,.4);color:var(--color-accent);font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.25rem .6rem;border-radius:2px}.instructor-card-body{padding:1rem}.instructor-name{font-size:1rem;font-weight:600;color:#fff;margin-bottom:.4rem}.instructor-resorts,.instructor-langs{font-size:.75rem;color:#ffffff80;margin-bottom:.3rem}.instructor-footer{display:flex;align-items:center;justify-content:space-between;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.06)}.instructor-price{font-size:.75rem;color:var(--color-accent);font-weight:600}.instructor-btn{padding:.4rem .9rem;font-size:.72rem}.hotel-provider-row{display:flex;flex-direction:column;gap:.75rem}.hotel-provider-label{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .8rem;border-radius:2px;display:inline-flex;align-self:flex-start}.agoda-label{background:#e3183726;color:#e31837;border:1px solid rgba(227,24,55,.3)}.booking-label{background:#006bb626;color:#006bb6;border:1px solid rgba(0,107,182,.3)}.hotel-card{flex:0 0 200px;background:var(--color-dark-3);border:1px solid rgba(255,255,255,.06);border-radius:4px;overflow:hidden;transition:var(--transition)}.hotel-card:hover{border-color:#c8a96e4d;transform:translateY(-2px)}.hotel-card-img{height:120px;overflow:hidden}.hotel-card-img img{width:100%;height:100%;object-fit:cover}.hotel-card-body{padding:.75rem}.hotel-stars{color:#f59e0b;font-size:.65rem;margin-bottom:.3rem}.hotel-name{font-size:.8rem;font-weight:600;color:#fff;margin-bottom:.3rem;line-height:1.3}.hotel-distance{font-size:.7rem;color:#fff6;margin-bottom:.5rem}.hotel-footer{display:flex;align-items:center;justify-content:space-between}.hotel-price{font-size:.8rem;font-weight:700;color:var(--color-accent)}.hotel-price small{font-size:.65rem;font-weight:400;color:#fff6;margin-left:2px}.hotel-book-btn{padding:.3rem .7rem;font-size:.65rem}.shop-card{flex:0 0 180px;background:var(--color-dark-3);border:1px solid rgba(255,255,255,.06);border-radius:4px;padding:1.25rem 1rem;display:flex;flex-direction:column;gap:.4rem;transition:var(--transition)}.shop-card:hover{border-color:#c8a96e4d;transform:translateY(-2px)}.shop-icon{font-size:1.75rem}.shop-name{font-size:.85rem;font-weight:600;color:#fff;line-height:1.3}.shop-location{font-size:.7rem;color:#ffffff73}.shop-price{font-size:.7rem;color:var(--color-accent);font-weight:600}.shop-btn{padding:.35rem .8rem;font-size:.7rem;margin-top:auto;align-self:flex-start}@media (max-width: 768px){.instructor-grid{grid-template-columns:1fr}.hotel-card{flex:0 0 160px}.shop-card{flex:0 0 150px}}.partner-section{background:var(--color-dark-2)}.partner-card{background:var(--color-dark-3);border:1px solid rgba(200,169,110,.2);border-radius:4px;padding:3rem;display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.partner-badge{display:inline-block;background:#c8a96e1a;border:1px solid rgba(200,169,110,.3);color:var(--color-accent);font-size:.7rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;padding:.4rem 1rem;border-radius:2px;margin-bottom:1.5rem}.partner-title{font-family:var(--font-serif);font-size:2.25rem;color:#fff;margin-bottom:1rem}.partner-desc{color:var(--color-text-muted);font-size:.95rem;margin-bottom:2rem;line-height:1.8}.partner-features{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.partner-feature{display:flex;align-items:center;gap:.75rem;font-size:.9rem;color:#ffffffbf}.partner-feature:before{content:"✓";color:var(--color-accent);font-weight:700;flex-shrink:0}.partner-image{border-radius:4px;overflow:hidden;position:relative}.partner-image img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}.partner-image-tag{position:absolute;bottom:1rem;left:1rem;background:#0a0e1ad9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(200,169,110,.3);border-radius:2px;padding:.75rem 1rem}.partner-image-tag strong{display:block;font-family:var(--font-serif);font-size:1rem;color:var(--color-accent)}.partner-image-tag span{font-size:.75rem;color:var(--color-text-muted)}.cta-section{position:relative;padding:7rem 0;overflow:hidden}.cta-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/images/resort-niseko.png);background-size:cover;background-position:center;filter:brightness(.35)}.cta-content{position:relative;z-index:2;text-align:center;max-width:650px;margin:0 auto}.cta-title{font-family:var(--font-serif);font-size:clamp(2rem,4vw,3.5rem);color:#fff;margin-bottom:1rem}.cta-title em{color:var(--color-accent);font-style:italic}.cta-desc{color:#ffffffb3;font-size:1rem;margin-bottom:2.5rem}.cta-actions{display:flex;gap:1rem;justify-content:center}.footer{background:#060912;border-top:1px solid rgba(200,169,110,.1);padding:4rem 0 2rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}.footer-logo{font-family:var(--font-serif);font-size:1.5rem;color:#fff;margin-bottom:1rem}.footer-logo span{color:var(--color-accent)}.footer-tagline{font-size:.85rem;color:var(--color-text-muted);max-width:260px;line-height:1.7;margin-bottom:1.5rem}.footer-social{display:flex;gap:.75rem}.footer-social-link{width:36px;height:36px;border:1px solid rgba(255,255,255,.15);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;color:var(--color-text-muted);transition:var(--transition)}.footer-social-link:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-2px)}.footer-col-title{font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);margin-bottom:1.25rem}.footer-links{display:flex;flex-direction:column;gap:.6rem}.footer-links a{font-size:.875rem;color:var(--color-text-muted);transition:var(--transition)}.footer-links a:hover{color:#fff;padding-left:4px}.footer-bottom{border-top:1px solid rgba(255,255,255,.06);padding-top:2rem;display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--color-text-muted)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(6px)}}.animate-in{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}.animate-in.visible{opacity:1;transform:translateY(0)}@media (max-width: 1024px){.resorts-grid,.features-grid{grid-template-columns:repeat(2,1fr)}.partner-card{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.hero-stats{right:2rem;bottom:5rem;gap:2rem}.search-card{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.navbar-nav{display:none}.navbar-inner{gap:.5rem;flex-wrap:nowrap}.navbar-logo{flex-shrink:0}.navbar-cta{gap:.5rem;flex-shrink:0}.navbar-cta>.btn{padding:.45rem .8rem!important;font-size:.75rem;white-space:nowrap}.nav-mytrip-text{display:none}.nav-mytrip{padding:.45rem .6rem!important}.hero-stats{display:none}.resorts-grid,.features-grid,.search-card{grid-template-columns:1fr}.section-header-row{flex-direction:column;gap:1.5rem;align-items:flex-start}.footer-grid{grid-template-columns:1fr;gap:2rem}.footer-bottom{flex-direction:column;gap:1rem;text-align:center}.cta-actions{flex-direction:column;align-items:center}.partner-card{padding:1.5rem;gap:1.5rem}.partner-title{font-size:1.6rem;line-height:1.2;word-break:break-word}.partner-desc{font-size:.88rem;line-height:1.7;margin-bottom:1.5rem}.partner-features{margin-bottom:1.5rem}.partner-feature{font-size:.85rem}.partner-info>div[style]{flex-direction:column!important;gap:.75rem!important}.partner-info>div[style]>.btn{width:100%;text-align:center}}@media (max-width: 480px){.partner-card{padding:1.25rem}.partner-title{font-size:1.4rem}.partner-badge{font-size:.65rem;padding:.35rem .75rem;margin-bottom:1rem}}.map-page{position:relative;width:100%;height:100vh;overflow:hidden;background:var(--color-dark);display:flex;flex-direction:column}.map-page-content{position:absolute;top:0;right:0;bottom:0;left:0;bottom:2.5rem}.map-page-footer{position:absolute;bottom:0;left:0;right:0;z-index:15;background:#0a0e1ae0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid rgba(255,255,255,.06);height:2.5rem;display:flex;align-items:center}.map-page-footer-inner{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:.7rem;color:#ffffff73}.map-page-footer-inner a{color:#ffffff8c;text-decoration:none;transition:color .2s}.map-page-footer-inner a:hover{color:var(--color-accent)}.map-page-footer-links{display:flex;gap:1.25rem}.map-page-header{position:absolute;top:5.5rem;left:50%;transform:translate(-50%);z-index:10;text-align:center;pointer-events:none}.map-page-label{font-size:.7rem;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:var(--color-accent);display:block;margin-bottom:.4rem}.map-page-title{font-family:var(--font-serif);font-size:1.75rem;color:#fff;font-weight:600;text-shadow:0 2px 20px rgba(0,0,0,.8)}.map-wrapper{position:relative;width:100%;overflow:hidden;background:var(--color-dark)}.map-container{width:100%;height:100%}.map-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-dark);gap:1.5rem}.map-loading p{font-size:.9rem;color:var(--color-text-muted);letter-spacing:.1em}.map-loading-spinner{width:40px;height:40px;border:3px solid rgba(200,169,110,.2);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.map-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:.75rem;color:var(--color-text-muted);text-align:center;padding:2rem;background:var(--color-dark)}.map-error span{font-size:3rem}.map-error p{font-size:.9rem;max-width:360px;line-height:1.6}.map-error strong{color:#fff}.map-error--auth{gap:1rem}.map-error-detail{font-size:.85rem;color:var(--color-text-muted);max-width:380px}.map-error-detail a{color:var(--color-accent);text-decoration:underline}.map-error-code{display:inline-block;background:#c8a96e1a;border:1px solid rgba(200,169,110,.3);color:var(--color-accent);padding:.4rem 1rem;border-radius:3px;font-size:.82rem;font-family:monospace;-webkit-user-select:all;user-select:all}.map-panel{position:absolute;top:0;left:0;width:320px;height:100%;background:#0a0e1af2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid rgba(200,169,110,.15);z-index:15;display:flex;flex-direction:column;transform:translate(-100%);transition:transform .35s cubic-bezier(.25,.46,.45,.94);overflow:hidden}.map-panel--open{transform:translate(0)}.map-panel-header{padding:1.5rem;border-bottom:1px solid rgba(200,169,110,.12);flex-shrink:0}.map-panel-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.map-panel-title{font-family:var(--font-serif);font-size:1.4rem;color:#fff}.map-panel-title span{color:var(--color-accent)}.map-panel-close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:1rem;padding:.25rem;transition:color .2s}.map-panel-close:hover{color:#fff}.map-panel-subtitle{font-size:.8rem;color:var(--color-text-muted);margin-bottom:1rem}.map-panel-count{font-weight:600;color:var(--color-accent)}.map-panel-tabs{display:flex;gap:.5rem}.map-tab{flex:1;padding:.5rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:2px;color:var(--color-text-muted);font-family:var(--font-sans);font-size:.75rem;font-weight:500;letter-spacing:.05em;cursor:pointer;transition:var(--transition)}.map-tab.active{background:#c8a96e1f;border-color:var(--color-accent);color:var(--color-accent)}.map-panel-body{flex:1;overflow-y:auto;padding:1.25rem;scrollbar-width:thin;scrollbar-color:rgba(200,169,110,.2) transparent}.map-panel-body--list{padding:0}.map-filter-group{margin-bottom:1.5rem}.map-filter-label{display:block;font-size:.68rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);margin-bottom:.6rem}.map-filter-input,.map-filter-select{width:100%;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:2px;padding:.65rem .9rem;color:#fff;font-family:var(--font-sans);font-size:.875rem;transition:var(--transition);outline:none;-webkit-appearance:none}.map-filter-input:focus,.map-filter-select:focus{border-color:var(--color-accent);background:#c8a96e0d}.map-filter-select option{background:var(--color-dark-2)}.map-legend{display:flex;flex-direction:column;gap:.5rem}.map-legend-item{display:flex;align-items:center;gap:.6rem;font-size:.8rem}.map-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;border:1.5px solid rgba(255,255,255,.4)}.map-legend-text{color:var(--color-text-muted)}.map-legend-sub{opacity:.6;font-size:.72rem}.map-clear-btn{width:100%;padding:.6rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:2px;color:#f87171;font-family:var(--font-sans);font-size:.78rem;letter-spacing:.05em;cursor:pointer;transition:var(--transition)}.map-clear-btn:hover{background:#ef444433;border-color:#ef4444}.map-resort-list{display:flex;flex-direction:column}.map-resort-item{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.25rem;background:none;border:none;border-bottom:1px solid rgba(255,255,255,.04);cursor:pointer;text-align:left;transition:background .2s;width:100%}.map-resort-item:hover{background:#ffffff0a}.map-resort-item.selected{background:#c8a96e1a}.map-resort-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;border:1.5px solid rgba(255,255,255,.4)}.map-resort-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.map-resort-name{font-size:.82rem;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.map-resort-meta{font-size:.72rem;color:var(--color-text-muted);display:block}.map-resort-arrow{color:var(--color-text-muted);font-size:1.1rem}.map-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;gap:1rem;text-align:center}.map-empty span{font-size:2.5rem}.map-empty p{font-size:.85rem;color:var(--color-text-muted)}.map-panel-toggle{position:absolute;top:1.5rem;left:1rem;z-index:16;width:44px;height:44px;background:#0a0e1aeb;border:1px solid rgba(200,169,110,.3);border-radius:2px;color:#fff;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;transition:var(--transition);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.map-panel-toggle:hover{border-color:var(--color-accent);color:var(--color-accent)}.map-panel-toggle-count{font-size:.58rem;font-weight:600;color:var(--color-accent);line-height:1}.map-detail-overlay{position:absolute;bottom:2rem;right:1rem;z-index:20;width:300px;max-width:calc(100vw - 2rem);animation:fadeInUp .3s ease}.marker-detail-card{background:#0a0e1af5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(200,169,110,.25);border-radius:4px;overflow:hidden;box-shadow:0 20px 60px #0009,var(--shadow-glow)}.mdc-drag-handle{display:none;width:36px;height:4px;background:#fff3;border-radius:2px;margin:10px auto 0}.map-panel-drag-handle{display:none;width:40px;height:4px;background:#ffffff40;border-radius:2px;margin:10px auto 0;flex-shrink:0}.map-backdrop,.map-mobile-bar{display:none}.map-page-navbar{display:flex;background:#0a0e1ad9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid rgba(200,169,110,.15)}.map-page-navbar>.container{flex:1;max-width:none;padding-left:1.5rem;padding-right:1.5rem}@media (max-width: 767px){.map-page-navbar{display:none!important}.map-mobile-bar{display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;left:0;right:0;height:48px;padding:0 1rem;background:#0a0e1ad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(200,169,110,.12);z-index:20}.map-mobile-logo{font-family:var(--font-serif);font-size:1.1rem;color:#fff;text-decoration:none}.map-mobile-logo span{color:var(--color-accent)}.map-mobile-home{font-size:.75rem;color:var(--color-text-muted);text-decoration:none;padding:.3rem .7rem;border:1px solid rgba(255,255,255,.15);border-radius:4px;transition:var(--transition)}.map-mobile-home:hover{color:#fff;border-color:#ffffff59}.map-panel{top:auto;bottom:0;left:0;right:0;width:100%;height:75vh;max-height:75vh;border-right:none;border-top:1px solid rgba(200,169,110,.2);border-radius:16px 16px 0 0;transform:translateY(100%);box-shadow:0 -8px 40px #00000080}.map-panel--open{transform:translateY(0)}.map-panel-drag-handle{display:block}.map-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:14;background:#00000073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.map-panel-toggle{top:auto;bottom:1.5rem;left:1rem;right:auto;width:52px;height:52px;border-radius:50%;box-shadow:0 4px 20px #00000080;font-size:1.3rem}.map-page-header,.map-count-badge{display:none}}.mdc-season{font-size:.72rem;color:#ffffff80;margin-top:.35rem;letter-spacing:.02em}.mdc-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.06)}.mdc-season-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.mdc-season-row .mdc-season{margin:0}.mdc-level-badge{font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.2rem .6rem;border-radius:2px;color:var(--color-dark)}.mdc-close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:.9rem;padding:.2rem;transition:color .2s}.mdc-close:hover{color:#fff}.mdc-name-section{padding:1rem 1rem .75rem}.mdc-name{font-family:var(--font-serif);font-size:1.1rem;color:#fff;margin-bottom:.2rem}.mdc-name-jp{font-size:.8rem;color:var(--color-text-muted);margin-bottom:.4rem}.mdc-location{font-size:.75rem;color:var(--color-accent);display:flex;align-items:center;gap:.25rem;flex-wrap:wrap}.mdc-area{opacity:.7}.mdc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff0f;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);margin:.25rem 0}.mdc-stat{display:flex;flex-direction:column;align-items:center;padding:.65rem .5rem;background:#0a0e1af5;gap:.2rem;text-align:center}.mdc-stat--highlight{background:#c8a96e0f}.mdc-stat-icon{font-size:.85rem}.mdc-stat-value{font-family:var(--font-serif);font-size:.9rem;font-weight:600;color:#fff}.mdc-stat--highlight .mdc-stat-value{color:var(--color-accent)}.mdc-stat-label{font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.mdc-level-bar{padding:.5rem 1rem;text-align:center}.mdc-level-label{font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.mdc-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;padding:.75rem 1rem 1rem}.mdc-btn{padding:.6rem .75rem;font-size:.72rem;justify-content:center}.map-fallback-banner{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:22;display:flex;align-items:center;gap:.6rem;max-width:calc(100vw - 2rem);background:#0a0e1aeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(200,169,110,.3);border-radius:20px;padding:.45rem .6rem .45rem 1rem;color:#fff;font-size:.8rem;letter-spacing:.02em;box-shadow:0 4px 20px #0006;animation:fadeIn .4s ease}.map-fallback-banner>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-fallback-banner-close{flex-shrink:0;width:22px;height:22px;border:0;border-radius:50%;background:#ffffff14;color:#ffffffb3;cursor:pointer;font-size:.7rem;line-height:1;transition:background .15s}.map-fallback-banner-close:hover{background:#ffffff2e;color:#fff}.map-count-badge{position:absolute;top:1.5rem;left:4rem;z-index:14;background:#0a0e1ae6;border:1px solid rgba(200,169,110,.2);border-radius:2px;padding:.4rem .8rem;font-size:.75rem;color:var(--color-text-muted);pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.map-preview-section{background:var(--color-dark-2);padding:5rem 0}.map-preview-desc{font-size:.95rem;color:var(--color-text-muted);max-width:580px;margin-top:1rem;line-height:1.7}.map-preview-wrapper{position:relative;border:1px solid rgba(200,169,110,.2);border-radius:4px;overflow:hidden;box-shadow:0 20px 60px #0006;margin-bottom:2rem}.map-preview-cta{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);z-index:10;white-space:nowrap}.map-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.map-stat-item{display:flex;align-items:center;gap:.75rem;background:var(--color-dark-3);border:1px solid rgba(255,255,255,.06);border-radius:4px;padding:1rem 1.25rem}.map-stat-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;border:2px solid rgba(255,255,255,.3)}.map-stat-count{display:block;font-family:var(--font-serif);font-size:1rem;font-weight:600;color:#fff}.map-stat-label{display:block;font-size:.7rem;color:var(--color-text-muted)}@media (max-width: 1024px){.map-panel{width:280px}.map-stats-row{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.map-panel{width:100%;max-width:340px;height:100%}.map-detail-overlay{position:fixed;bottom:0;left:0;right:0;width:100%;max-height:70vh;overflow-y:auto;border-radius:16px 16px 0 0;padding-bottom:env(safe-area-inset-bottom);animation:slideUp .3s ease}.marker-detail-card{border-radius:16px 16px 0 0;max-height:70vh;overflow-y:auto}.mdc-drag-handle{display:block}.mdc-stats{grid-template-columns:repeat(3,1fr)}.map-stats-row{grid-template-columns:1fr 1fr}.map-preview-cta .btn{font-size:.7rem;padding:.7rem 1.2rem;white-space:normal;text-align:center}.map-page-title{font-size:1.25rem}}@media (max-width: 480px){.map-stats-row{grid-template-columns:1fr 1fr}.mdc-actions{grid-template-columns:1fr}}.rl-hero{position:relative;padding:10rem 0 4rem;overflow:hidden}.rl-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/images/hero-bg.png) center/cover no-repeat;background-image:image-set(url(/images/hero-bg.avif) type("image/avif"),url(/images/hero-bg.webp) type("image/webp"),url(/images/hero-bg.png) type("image/png"));filter:brightness(.25)}.rl-hero-content{position:relative;z-index:1;max-width:640px}.rl-hero-title{font-family:var(--font-serif);font-size:clamp(2.5rem,5vw,4rem);font-weight:700;color:#fff;line-height:1.1;margin-bottom:1rem}.rl-hero-desc{color:var(--color-text-muted);font-size:1.05rem;line-height:1.7}.rl-filters-bar{background:var(--color-dark-2);border-bottom:1px solid rgba(255,255,255,.06);position:sticky;top:70px;z-index:90;padding:1rem 0}.rl-filters-inner{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.rl-search-wrap{position:relative;flex:1;min-width:180px}.rl-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);font-size:.9rem;pointer-events:none}.rl-search{width:100%;background:var(--color-dark-3);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--color-text);padding:.6rem 2.5rem .6rem 2.25rem;font-size:.9rem;font-family:var(--font-sans);outline:none;transition:border-color .2s}.rl-search:focus{border-color:var(--color-accent)}.rl-search-clear{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:.85rem;padding:.25rem}.rl-select{background:var(--color-dark-3);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--color-text);padding:.6rem 1rem;font-size:.85rem;font-family:var(--font-sans);outline:none;cursor:pointer;transition:border-color .2s}.rl-select:focus{border-color:var(--color-accent)}.rl-level-toggles{display:flex;gap:.4rem;flex-wrap:wrap}.rl-level-btn{display:flex;align-items:center;gap:.4rem;background:var(--color-dark-3);border:1px solid rgba(255,255,255,.1);border-radius:20px;color:var(--color-text-muted);padding:.4rem .9rem;font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all .2s}.rl-level-btn.active{color:#fff}.rl-level-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.rl-count{color:var(--color-text-muted);font-size:.85rem;white-space:nowrap;margin-left:auto}.rl-main{padding:2.5rem 0 4rem}.rl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.rl-card{display:flex;align-items:stretch;background:var(--color-dark-2);border:1px solid rgba(255,255,255,.06);border-radius:12px;overflow:hidden;transition:border-color .25s,transform .25s,box-shadow .25s;cursor:pointer;text-decoration:none;color:inherit}.rl-card:hover{border-color:#c8a96e66;transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.rl-card-accent{width:4px;flex-shrink:0}.rl-card-body{flex:1;padding:1rem 1rem 1rem .875rem;min-width:0}.rl-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}.rl-card-level{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:.2rem}.rl-card-name{font-family:var(--font-serif);font-size:1rem;font-weight:600;color:#fff;line-height:1.2}.rl-card-jp{font-size:.75rem;color:var(--color-text-muted);margin-top:.1rem}.rl-card-prefecture{background:#ffffff0f;border-radius:6px;padding:.2rem .5rem;font-size:.7rem;color:var(--color-text-muted);white-space:nowrap;flex-shrink:0}.rl-card-location{font-size:.75rem;color:var(--color-text-muted);margin-bottom:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rl-card-stats{display:flex;gap:.75rem}.rl-stat{display:flex;flex-direction:column}.rl-stat-val{font-size:.9rem;font-weight:600;color:#fff}.rl-stat-lbl{font-size:.65rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.rl-card-arrow{display:flex;align-items:center;padding:0 .875rem 0 .25rem;color:var(--color-text-muted);font-size:1rem;transition:color .2s,transform .2s}.rl-card:hover .rl-card-arrow{color:var(--color-accent);transform:translate(3px)}.rl-pagination{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:2.5rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.06)}.rl-page-btn{background:var(--color-dark-2);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--color-text);padding:.5rem 1rem;font-size:.85rem;font-family:var(--font-sans);cursor:pointer;transition:all .2s}.rl-page-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.rl-page-btn:disabled{opacity:.3;cursor:default}.rl-page-nums{display:flex;gap:.35rem}.rl-page-num{background:var(--color-dark-2);border:1px solid rgba(255,255,255,.1);border-radius:6px;color:var(--color-text-muted);width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-family:var(--font-sans);cursor:pointer;transition:all .2s}.rl-page-num.active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-dark);font-weight:700}.rl-page-num:hover:not(.active){border-color:var(--color-accent);color:var(--color-accent)}.rl-loading,.rl-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:5rem 2rem;color:var(--color-text-muted)}.rl-empty span{font-size:3rem}.resort-card--skeleton{min-height:260px;background:linear-gradient(90deg,var(--color-dark-2) 25%,var(--color-dark-3) 50%,var(--color-dark-2) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.resort-card-level-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.rd-loading-screen,.rd-not-found{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;background:var(--color-dark);color:var(--color-text-muted);text-align:center;padding:2rem}.rd-not-found h1{font-family:var(--font-serif);font-size:2.5rem;color:#fff}.rd-breadcrumb{background:var(--color-dark-2);border-bottom:1px solid rgba(255,255,255,.06);padding:.75rem 0;margin-top:70px}.rd-breadcrumb .container{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--color-text-muted);flex-wrap:wrap}.rd-breadcrumb a{color:var(--color-text-muted);transition:color .2s}.rd-breadcrumb a:hover{color:var(--color-accent)}.rd-breadcrumb span:last-child{color:var(--color-text)}.rd-hero{position:relative;height:min(55vh,520px);display:flex;align-items:flex-end;overflow:hidden}.rd-hero-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 8s ease;background-size:cover;background-position:center}.rd-hero:hover .rd-hero-img{transform:scale(1.04)}.rd-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#0a0e1af2,#0a0e1a80,#0a0e1a33)}.rd-hero-content{position:relative;z-index:1;padding:2.5rem 0;width:100%}.rd-hero-meta{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.rd-level-badge{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-dark);padding:.3rem .75rem;border-radius:20px}.rd-prefecture-tag{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:6px;padding:.25rem .65rem;font-size:.75rem;color:var(--color-text-muted)}.rd-hero-tagline{font-family:var(--font-serif);font-size:.95rem;font-style:italic;color:var(--color-accent-light);letter-spacing:.01em;margin-bottom:.5rem;max-width:720px;line-height:1.4;text-shadow:0 1px 2px rgba(0,0,0,.5)}.rd-editor-pick{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,#c8a96e2e,#c8a96e14);border:1px solid rgba(200,169,110,.4);border-radius:99px;padding:.25rem .7rem;font-size:.7rem;font-weight:500;color:var(--color-accent-light);letter-spacing:.02em;text-transform:lowercase}.rd-hero-video-btn{display:inline-flex;align-items:center;gap:6px;background:#ffffff14;border:1px solid rgba(255,255,255,.18);border-radius:99px;padding:.5rem 1.1rem;font-size:.85rem;font-weight:500;color:#fff;cursor:pointer;margin-top:1rem;transition:all .15s;font-family:inherit;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.rd-hero-video-btn:hover{background:#c8a96e2e;border-color:#c8a96e80;color:var(--color-accent-light);transform:translateY(-1px)}.rd-hero-title{font-family:var(--font-serif);font-size:clamp(2rem,5vw,3.5rem);font-weight:700;color:#fff;line-height:1.1;margin-bottom:.5rem}.rd-hero-jp{font-size:1.1rem;color:var(--color-text-muted);margin-bottom:.5rem}.rd-hero-location{font-size:.9rem;color:var(--color-text-muted)}.rd-hero-season{font-size:.82rem;color:#ffffff80;margin-top:.4rem;letter-spacing:.02em}.rd-fab{position:fixed;right:1.5rem;top:50%;transform:translateY(-50%);z-index:50;display:flex;flex-direction:column;gap:.6rem}.rd-fab-btn{position:relative;width:48px;height:48px;border-radius:50%;border:1px solid rgba(200,169,110,.3);background:#0a0e1ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer;text-decoration:none;color:inherit;transition:border-color .2s,transform .2s,background .2s;box-shadow:0 4px 20px #0006}.rd-fab-btn:hover{border-color:var(--color-accent);transform:scale(1.1);background:#141a2ef2}.rd-fab-btn--active{border-color:#ef4444;background:#ef44441a}.rd-fab-tooltip{position:absolute;right:56px;white-space:nowrap;background:#0a0e1af2;border:1px solid rgba(200,169,110,.2);color:#fff;font-size:.72rem;font-weight:600;letter-spacing:.05em;padding:.3rem .65rem;border-radius:4px;opacity:0;pointer-events:none;transition:opacity .15s}.rd-fab-btn:hover .rd-fab-tooltip{opacity:1}.rd-fab-toast{position:absolute;right:56px;top:50%;transform:translateY(-50%);background:var(--color-accent);color:#000;font-size:.72rem;font-weight:700;padding:.3rem .65rem;border-radius:4px;white-space:nowrap;animation:fadeInUp .2s ease}@media (max-width: 768px){.rd-fab{top:auto;bottom:1.5rem;right:50%;transform:translate(50%);flex-direction:row;gap:.75rem}.rd-fab-tooltip{display:none}}.rd-main{padding:2.5rem 0 4rem}.rd-layout{display:grid;grid-template-columns:1fr 300px;gap:2rem;align-items:start;min-width:0}.rd-content,.rd-sidebar{min-width:0}.rd-section{margin-bottom:2.5rem}.rd-section-title{font-family:var(--font-serif);font-size:1.3rem;font-weight:600;color:#fff;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.08)}.rd-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.rd-stat-box{background:var(--color-dark-2);border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:1rem;display:flex;flex-direction:column;gap:.25rem;transition:border-color .2s}.rd-stat-box:hover{border-color:#c8a96e4d}.rd-stat-val{font-family:var(--font-serif);font-size:1.4rem;font-weight:700;color:#fff;line-height:1}.rd-stat-lbl{font-size:.7rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em}.rd-difficulty-card{display:flex;align-items:flex-start;gap:1rem;background:var(--color-dark-2);border:1px solid;border-radius:10px;padding:1.25rem;opacity:.85}.rd-difficulty-dot{width:16px;height:16px;border-radius:50%;flex-shrink:0;margin-top:.2rem}.rd-difficulty-name{font-weight:700;font-size:1rem;margin-bottom:.35rem}.rd-difficulty-desc{color:var(--color-text-muted);font-size:.9rem;line-height:1.6}.rd-location-card{background:var(--color-dark-2);border:1px solid rgba(255,255,255,.06);border-radius:10px;overflow:hidden}.rd-location-info{padding:1.25rem}.rd-location-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.9rem}.rd-location-row:last-child{border-bottom:none}.rd-location-lbl{color:var(--color-text-muted)}.rd-maps-btn{display:block;background:var(--color-dark-3);border-top:1px solid rgba(255,255,255,.06);padding:.875rem 1.25rem;color:var(--color-accent);font-size:.9rem;font-weight:500;text-align:center;transition:background .2s}.rd-maps-btn:hover{background:#c8a96e1a}.rd-cta-card{background:var(--color-dark-2);border:1px solid rgba(200,169,110,.2);border-radius:12px;padding:1.5rem;margin-bottom:1.25rem}.rd-cta-card h3{font-family:var(--font-serif);font-size:1.1rem;font-weight:600;color:#fff;margin-bottom:.5rem}.rd-cta-card p{color:var(--color-text-muted);font-size:.85rem;line-height:1.6;margin-bottom:1rem}.rd-quick-facts{background:var(--color-dark-2);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.25rem}.rd-quick-facts h4{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:.875rem}.rd-quick-facts ul{display:flex;flex-direction:column;gap:0}.rd-quick-facts li{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.85rem}.rd-quick-facts li:last-child{border-bottom:none}.rd-quick-facts li span{color:var(--color-text-muted)}.rd-quick-facts li strong{color:#fff}.rd-related{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.06)}.rd-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-top:1rem}.rd-related-card{display:flex;background:var(--color-dark-2);border:1px solid rgba(255,255,255,.06);border-radius:10px;overflow:hidden;transition:border-color .2s,transform .2s;text-decoration:none;color:inherit}.rd-related-card:hover{border-color:#c8a96e59;transform:translateY(-2px)}.rd-related-accent{width:4px;flex-shrink:0}.rd-related-body{padding:.875rem;flex:1;min-width:0}.rd-related-level{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:.25rem}.rd-related-name{font-family:var(--font-serif);font-size:.95rem;font-weight:600;color:#fff;line-height:1.2;margin-bottom:.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rd-related-town{font-size:.75rem;color:var(--color-text-muted);margin-bottom:.5rem}.rd-related-stats{display:flex;gap:.75rem;font-size:.75rem;color:var(--color-text-muted)}@media (max-width: 1024px){.rd-layout{grid-template-columns:1fr}.rd-sidebar{order:-1;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.rd-cta-card{margin-bottom:0}.rd-stats-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 768px){.rl-filters-inner{flex-direction:column;align-items:stretch}.rl-count{margin-left:0}.rl-grid{grid-template-columns:1fr}.rd-hero{height:55vw;min-height:280px;max-height:380px}.rd-hero-content{padding:1.5rem 0}.rd-hero-jp{font-size:.95rem}.rd-hero-location,.rd-hero-season{font-size:.8rem}.rd-breadcrumb{padding:.6rem 0}.rd-breadcrumb .container{font-size:.72rem}.rd-main{padding:1.5rem 0 5rem}.rd-stats-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.rd-stat-box{padding:.75rem}.rd-stat-val{font-size:1.15rem}.rd-sidebar{grid-template-columns:1fr;gap:1rem}.rd-section{margin-bottom:1.75rem}.rd-section-title{font-size:1.1rem;margin-bottom:.75rem;padding-bottom:.5rem}.rd-related-grid{grid-template-columns:repeat(2,1fr)}.rd-cta-card,.rd-quick-facts{padding:1.1rem}.rd-breadcrumb .container,.rd-main>.container,.rd-hero .container{padding-left:1rem;padding-right:1rem}}@media (max-width: 480px){.navbar-cta{gap:.35rem}.navbar-cta>.btn{padding:.4rem .6rem!important;font-size:.7rem}.rl-level-toggles{gap:.3rem}.rd-related-grid{grid-template-columns:1fr}.rl-page-nums{gap:.2rem}.rl-page-num{width:30px;height:30px;font-size:.8rem}.rd-hero-title{font-size:clamp(1.6rem,7vw,2.2rem)}.rd-hero-meta{flex-wrap:wrap;gap:.5rem}.rd-stats-grid{gap:.45rem}.rd-fab{gap:.5rem;bottom:1rem!important}.rd-fab-btn{width:44px;height:44px;font-size:1.05rem}.rd-location-row{flex-direction:column;align-items:flex-start;gap:.15rem}.rd-difficulty-card{padding:1rem}}.lang-switcher-btn{display:flex;align-items:center;gap:.3rem;background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:.35rem .6rem;color:var(--color-text);cursor:pointer;font-size:.78rem;font-weight:600;transition:background .15s,border-color .15s;white-space:nowrap}.lang-switcher-btn:hover{background:#c8a96e14;border-color:var(--color-accent)}.lang-flag{font-size:1rem;line-height:1}.lang-code{letter-spacing:.04em}.lang-chevron{font-size:.65rem;color:var(--color-text-muted)}.lang-dropdown{position:absolute;top:calc(100% + 6px);right:0;z-index:1000;background:#0a0e1afa;border:1px solid rgba(200,169,110,.25);border-radius:10px;padding:.35rem;box-shadow:0 12px 32px #0009,0 0 0 1px #0006;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);min-width:150px;animation:langFadeIn .12s ease}@keyframes langFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.lang-option{display:flex;align-items:center;gap:.6rem;width:100%;background:transparent;border:none;border-radius:7px;padding:.55rem .7rem;cursor:pointer;color:var(--color-text);font-size:.82rem;text-align:left;transition:background .12s,color .12s}.lang-option:hover{background:#c8a96e1f;color:#fff}.lang-option.active{background:#c8a96e2e;color:var(--color-accent);font-weight:600}.lang-native{flex:1;min-width:0;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lang-name-en{color:var(--color-text-muted);font-size:.7rem;font-weight:400;letter-spacing:.02em;white-space:nowrap;flex-shrink:0}.lang-check{color:var(--color-accent);font-size:.8rem;flex-shrink:0}.lang-group{display:flex;flex-direction:column;gap:1px}.lang-divider{height:1px;background:#ffffff14;margin:.35rem .5rem}.lang-dropdown{min-width:240px;max-width:calc(100vw - 24px);max-height:75vh;overflow-y:auto}@media (max-width: 640px){.lang-dropdown{left:0;right:auto;min-width:200px}.lang-name-en{font-size:.65rem}}.sr-card{background:var(--color-dark-3);border:1px solid rgba(200,169,110,.2);border-radius:16px;padding:1.5rem;margin-bottom:2rem}.sr-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;gap:.75rem}.sr-title{font-size:1rem;font-weight:700;color:var(--color-text)}.sr-badge{font-size:.68rem;font-weight:600;letter-spacing:.08em;color:var(--color-text-muted);background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:2px 10px;white-space:nowrap}.sr-main-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.sr-stat{text-align:center;background:#ffffff0a;border-radius:12px;padding:1rem .75rem}.sr-stat--blue .sr-stat-val{color:#60a5fa}.sr-stat-val{display:block;font-size:2rem;font-weight:800;color:var(--color-text);line-height:1}.sr-stat-unit{display:inline-block;font-size:.85rem;color:var(--color-text-muted);margin-left:2px}.sr-stat-lbl{display:block;font-size:.7rem;color:var(--color-text-muted);margin-top:.4rem;letter-spacing:.06em;text-transform:uppercase}.sr-secondary{display:flex;align-items:center;gap:1.25rem;padding:.65rem 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:1rem;font-size:.82rem;color:var(--color-text-muted)}.sr-secondary-item{display:flex;align-items:center;gap:.4rem}.sr-forecast{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem}.sr-forecast-day{display:flex;flex-direction:column;align-items:center;gap:.3rem;background:#ffffff08;border-radius:10px;padding:.6rem .4rem;text-align:center}.sr-forecast-day-name{font-size:.7rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em}.sr-forecast-icon{font-size:1rem}.sr-forecast-snow{font-size:.8rem;font-weight:700;color:#93c5fd}.sr-forecast-temp{font-size:.68rem;color:var(--color-text-muted)}.sr-skeleton-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.sr-skeleton{height:80px;border-radius:12px;background:#ffffff0f;animation:srPulse 1.4s ease-in-out infinite}@keyframes srPulse{0%,to{opacity:1}50%{opacity:.4}}.sr-offseason{display:flex;align-items:center;gap:.75rem;padding:1rem;color:var(--color-text-muted);font-size:.9rem}.sr-error{color:var(--color-text-muted);font-size:.85rem;padding:.5rem 0}.cp-hero{padding:9rem 0 3rem;background:var(--color-dark-2);border-bottom:1px solid rgba(200,169,110,.1)}.cp-hero-content{max-width:600px}.cp-hero-title{font-size:clamp(2rem,4vw,3rem);font-weight:700;color:#fff;margin:.5rem 0 .75rem;line-height:1.15}.cp-hero-sub{color:var(--color-text-muted);font-size:1rem}.cp-main{background:var(--color-dark);min-height:60vh;padding:2.5rem 0 4rem}.cp-empty{text-align:center;padding:5rem 1rem;color:var(--color-text-muted)}.cp-empty span{font-size:4rem;display:block;margin-bottom:1rem}.cp-empty h2{color:var(--color-text);font-size:1.4rem;margin-bottom:.75rem}.cp-table-wrap{overflow-x:auto;border-radius:16px;border:1px solid rgba(255,255,255,.08);margin-bottom:1.5rem}.cp-table{width:100%;border-collapse:collapse;background:var(--color-dark-3);min-width:600px}.cp-table thead tr{border-bottom:1px solid rgba(255,255,255,.08)}.cp-label-col{width:160px;min-width:140px;padding:1.25rem 1.25rem 1.25rem 1.5rem;text-align:left;font-size:.75rem;color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;vertical-align:top}.cp-resort-col{padding:1.25rem 1rem;text-align:center;vertical-align:top;border-left:1px solid rgba(255,255,255,.05)}.cp-resort-header{position:relative;display:flex;flex-direction:column;align-items:center;gap:.25rem}.cp-resort-name{font-size:.95rem;font-weight:700;color:var(--color-text)}.cp-resort-prefecture{font-size:.75rem;color:var(--color-text-muted)}.cp-remove-btn{position:absolute;top:-.5rem;right:-.5rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#ef4444;border-radius:50%;width:22px;height:22px;font-size:.65rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.cp-remove-btn:hover{background:#ef44444d}.cp-add-col{opacity:.4}.cp-add-btn{display:inline-block;padding:.5rem 1rem;border:1px dashed rgba(200,169,110,.4);border-radius:8px;color:var(--color-accent);font-size:.8rem;transition:border-color .15s,opacity .15s}.cp-add-btn:hover{border-color:var(--color-accent);opacity:1}.cp-table tbody tr{border-top:1px solid rgba(255,255,255,.04)}.cp-table tbody tr:hover{background:#ffffff05}.cp-row-label{padding:.85rem 1.25rem .85rem 1.5rem;font-size:.8rem;color:var(--color-text-muted);text-align:left;white-space:nowrap}.cp-row-val{padding:.85rem 1rem;font-size:.9rem;color:var(--color-text);text-align:center;border-left:1px solid rgba(255,255,255,.04)}.cp-best{color:var(--color-accent);font-weight:700}.cp-loading{color:var(--color-text-muted);font-size:.85rem}.cp-actions{display:flex;gap:.75rem;justify-content:flex-end}.compare-float-chip{display:inline-flex;align-items:center;padding:.4rem 1rem;background:#c8a96e26;border:1px solid var(--color-accent);border-radius:20px;color:var(--color-accent);font-size:.75rem;font-weight:700;letter-spacing:.06em;white-space:nowrap;transition:background .2s,transform .2s}.compare-float-chip:hover{background:#c8a96e40;transform:translateY(-1px)}.rl-compare-chip{display:inline-flex;align-items:center;gap:.3rem;padding:3px 10px;font-size:.68rem;font-weight:600;border-radius:20px;border:1px solid rgba(255,255,255,.2);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:border-color .15s,background .15s,color .15s;white-space:nowrap}.rl-compare-chip:hover{border-color:var(--color-accent);color:var(--color-accent)}.rl-compare-chip--active{border-color:var(--color-accent);background:#c8a96e1f;color:var(--color-accent)}.rd-fab-btn--compare-active{border-color:var(--color-accent)!important;box-shadow:0 0 0 2px #c8a96e4d}@keyframes sd-pulse{0%,to{opacity:1}50%{opacity:.4}}.sd-dashboard{display:flex;flex-direction:column;gap:0}.sd-section{margin-bottom:2.5rem}.sd-section-title{font-size:1rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);margin-bottom:1.25rem;display:flex;align-items:center;gap:.5rem}.sd-score-gauge{display:flex;flex-direction:column;align-items:center;gap:.5rem}.sd-score-label{font-size:1.3rem;font-weight:700;letter-spacing:.05em}.sd-score-sublabel{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em}.sd-current-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}@media (max-width: 768px){.sd-current-grid{grid-template-columns:repeat(2,1fr)}}.sd-current-card{background:var(--color-dark-3);border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:1rem;display:flex;flex-direction:column;align-items:center;gap:.3rem;text-align:center;transition:border-color .2s}.sd-current-card:hover{border-color:#c8a96e4d}.sd-current-card--primary{padding:1.25rem 1rem}.sd-card-icon{font-size:1.3rem;line-height:1}.sd-current-card--primary .sd-card-icon{font-size:1.6rem}.sd-card-value{font-size:1.8rem;font-weight:700;color:#fff;line-height:1}.sd-current-card--primary .sd-card-value{font-size:2.2rem}.sd-card-value--sm{font-size:1.1rem;font-weight:600}.sd-card-unit{font-size:.75em;font-weight:400;color:var(--color-text-muted);margin-left:2px}.sd-card-label{font-size:.72rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em}.sd-wind-arrow{margin-left:4px;font-size:1rem;display:inline-block;color:var(--color-accent)}.sd-snow-line-alert{margin-top:1rem;padding:.75rem 1rem;border-radius:6px;font-size:.88rem;font-weight:500;border-left:3px solid}.sd-snow-line-alert--green{background:#10b9811a;border-color:#10b981;color:#6ee7b7}.sd-snow-line-alert--yellow{background:#f59e0b1a;border-color:#f59e0b;color:#fcd34d}.sd-snow-line-alert--orange{background:#f973161f;border-color:#f97316;color:#fdba74}.sd-alert-row{display:flex;flex-wrap:wrap;gap:.6rem}.sd-alert-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border-radius:20px;font-size:.8rem;font-weight:500;border:1px solid;white-space:nowrap}.sd-alert-chip--red{background:#ef44441f;border-color:#ef444466;color:#fca5a5}.sd-alert-chip--orange{background:#f973161f;border-color:#f9731666;color:#fdba74}.sd-alert-chip--yellow{background:#f59e0b1f;border-color:#f59e0b66;color:#fcd34d}.sd-alert-chip--gold{background:#c8a96e26;border-color:#c8a96e80;color:var(--color-accent)}.sd-alert-chip--green{background:#10b9811f;border-color:#10b98166;color:#6ee7b7}.sd-hourly-strip{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:.5rem;scrollbar-width:thin;scrollbar-color:rgba(200,169,110,.3) transparent}.sd-hourly-strip::-webkit-scrollbar{height:4px}.sd-hourly-strip::-webkit-scrollbar-track{background:transparent}.sd-hourly-strip::-webkit-scrollbar-thumb{background:#c8a96e4d;border-radius:2px}.sd-hourly-slot{flex:0 0 90px;background:var(--color-dark-3);border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:.75rem .5rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;text-align:center}.sd-hourly-time{font-size:.72rem;color:var(--color-accent);font-weight:600}.sd-hourly-icon{font-size:1.3rem}.sd-hourly-temp{font-size:.95rem;font-weight:700;color:#fff}.sd-hourly-snow{font-size:.72rem;color:#93c5fd}.sd-hourly-prob{font-size:.72rem;color:var(--color-text-muted)}.sd-powder-banner{background:linear-gradient(90deg,#c8a96e33,#c8a96e14);border:1px solid rgba(200,169,110,.4);border-radius:8px;padding:.75rem 1rem;font-size:.9rem;font-weight:600;color:var(--color-accent);margin-bottom:1rem;text-align:center}.sd-daily-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem}@media (max-width: 900px){.sd-daily-grid{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.5rem;scrollbar-width:thin;scrollbar-color:rgba(200,169,110,.3) transparent}.sd-daily-grid::-webkit-scrollbar{height:4px}.sd-daily-grid::-webkit-scrollbar-thumb{background:#c8a96e4d;border-radius:2px}}.sd-daily-card{background:var(--color-dark-3);border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:.75rem .5rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;text-align:center;transition:border-color .2s;min-width:90px}.sd-daily-card:hover{border-color:#c8a96e4d}.sd-daily-card--snow{border-color:#3b82f659;background:#3b82f60f}.sd-daily-card--today{border-color:var(--color-accent)!important;background:#c8a96e12!important;position:relative}.sd-today-badge{font-size:.65rem;font-weight:700;color:var(--color-dark-1);background:var(--color-accent);border-radius:999px;padding:.15rem .55rem;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.sd-daily-day{font-size:.75rem;font-weight:700;color:var(--color-accent);text-transform:uppercase;letter-spacing:.05em}.sd-daily-date{font-size:.6rem;color:var(--color-text-muted);opacity:.75;white-space:nowrap}.sd-daily-icon{font-size:1.4rem}.sd-daily-snow{font-size:.75rem;color:var(--color-text-muted)}.sd-daily-snow--highlight{color:#93c5fd;font-weight:600}.sd-daily-temps{display:flex;gap:.3rem;font-size:.85rem;font-weight:600}.sd-daily-max{color:#fff}.sd-daily-min{color:var(--color-text-muted)}.sd-daily-wind,.sd-daily-precip,.sd-daily-sun{font-size:.68rem;color:var(--color-text-muted)}.sd-history-chart{display:flex;align-items:flex-end;gap:2px;height:120px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:8px 8px 24px;position:relative;overflow:hidden}.sd-bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;position:relative}.sd-bar{width:100%;background:#3b82f699;border-radius:2px 2px 0 0;min-height:2px;transition:height .3s ease}.sd-bar--forecast{background:#c8a96e80}.sd-bar-divider{position:absolute;left:-1px;top:0;bottom:0;width:2px;background:#c8a96e99;border-left:2px dashed rgba(200,169,110,.5)}.sd-bar-label{position:absolute;bottom:-20px;font-size:.6rem;color:var(--color-text-muted);white-space:nowrap;transform:translate(-50%);left:50%}.sd-chart-legend{display:flex;gap:1rem;margin-top:.5rem;font-size:.75rem;color:var(--color-text-muted)}.sd-legend-past:before{content:"";display:inline-block;width:12px;height:12px;background:#3b82f699;border-radius:2px;margin-right:4px;vertical-align:middle}.sd-legend-forecast:before{content:"";display:inline-block;width:12px;height:12px;background:#c8a96e80;border-radius:2px;margin-right:4px;vertical-align:middle}.sd-summary-card{background:var(--color-dark-3);border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:1rem 1.25rem;margin-top:1.25rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 1.5rem}@media (max-width: 600px){.sd-summary-card{grid-template-columns:1fr}}.sd-summary-item{display:flex;justify-content:space-between;align-items:center;gap:.5rem;font-size:.85rem}.sd-summary-item span{color:var(--color-text-muted)}.sd-summary-item strong{color:#fff;font-weight:600}.sd-error-card{background:#ef444414;border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:1.25rem 1.5rem;font-size:.9rem;color:#fca5a5}.sd-offseason{display:flex;flex-direction:column;gap:1.5rem}.sd-offseason-icon{font-size:2.5rem;text-align:center}.sd-offseason-text{background:#94a3b814;border:1px solid rgba(148,163,184,.2);border-radius:8px;padding:1rem 1.5rem;font-size:.9rem;color:var(--color-text-muted);text-align:center}.sd-loading{display:flex;flex-direction:column;gap:2rem}.sd-skeleton-section{display:flex;flex-direction:column;gap:.75rem}.sd-skeleton{background:var(--color-dark-3);border-radius:6px;animation:sd-pulse 1.5s ease-in-out infinite}.sd-skeleton--title{height:20px;width:160px}.sd-skeleton--gauge{height:140px;width:140px;border-radius:50%;align-self:center}.sd-skeleton-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}@media (max-width: 768px){.sd-skeleton-grid{grid-template-columns:repeat(2,1fr)}}.sd-skeleton--card{height:90px}.sd-skeleton--strip{height:100px;width:100%}.rd-section-subtitle{color:var(--color-text-muted);font-size:.85rem;margin:-.5rem 0 1.25rem;opacity:.85}.rd-about-body p{color:var(--color-text);line-height:1.75;margin-bottom:1rem;font-size:.95rem}.rd-about-body p:last-child{margin-bottom:0}.rd-about-disclaimer{margin-top:1rem;font-size:.7rem;color:var(--color-text-muted);opacity:.6;font-style:italic}.rd-airport-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem}.rd-airport-card{position:relative;padding:1rem;background:var(--color-dark-3);border:1px solid rgba(255,255,255,.06);border-radius:10px;text-decoration:none;color:var(--color-text);transition:all .2s;display:flex;flex-direction:column;gap:.35rem}.rd-airport-card:hover{border-color:var(--color-accent);transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.rd-airport-card--primary{border-color:#c8a96e66;background:linear-gradient(135deg,rgba(200,169,110,.05) 0%,var(--color-dark-3) 60%)}.rd-airport-badge{position:absolute;top:-.5rem;right:.75rem;background:var(--color-accent);color:var(--color-dark-1);font-size:.65rem;font-weight:700;padding:.25rem .65rem;border-radius:999px;letter-spacing:.04em}.rd-airport-code{font-family:JetBrains Mono,ui-monospace,monospace;font-size:1.5rem;font-weight:800;color:var(--color-accent);letter-spacing:.06em}.rd-airport-name{font-size:.85rem;color:var(--color-text);line-height:1.3;margin-bottom:.5rem}.rd-airport-stats{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto}.rd-airport-stat{font-size:.78rem;color:var(--color-text-muted);background:#ffffff0a;padding:.25rem .55rem;border-radius:6px}.rd-airport-train{background:#22c55e1f;color:#86efac}.rd-airport-cta{margin-top:.65rem;font-size:.78rem;color:var(--color-accent);font-weight:600;border-top:1px solid rgba(255,255,255,.05);padding-top:.6rem}.rd-hotels-header{margin-bottom:1.25rem}.rd-hotels-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem}.rd-hotel-card{background:var(--color-dark-3);border:1px solid rgba(255,255,255,.06);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:all .2s}.rd-hotel-card:hover{border-color:#c8a96e4d;transform:translateY(-3px);box-shadow:0 10px 30px #0000004d}.rd-hotel-photo{position:relative;height:160px;background-size:cover;background-position:center;background-color:var(--color-dark-2)}.rd-hotel-near-badge{position:absolute;top:.6rem;left:.6rem;background:#000000b3;color:#fff;font-size:.7rem;font-weight:600;padding:.3rem .6rem;border-radius:999px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.rd-hotel-body{padding:1rem;display:flex;flex-direction:column;gap:.4rem;flex:1}.rd-hotel-stars{color:#f59e0b;font-size:.85rem;letter-spacing:.1em}.rd-hotel-name{font-size:1rem;font-weight:700;color:var(--color-text);line-height:1.3;margin:0}.rd-hotel-distance{font-size:.78rem;color:var(--color-text-muted);margin:0}.rd-hotel-price{font-size:.95rem;color:var(--color-text);margin:.4rem 0 0}.rd-hotel-price strong{color:var(--color-accent);font-size:1.1rem}.rd-hotel-price small{color:var(--color-text-muted);font-size:.75rem}.rd-hotel-cta-row{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin-top:.75rem}.rd-hotel-btn{padding:.55rem .4rem;border-radius:8px;font-size:.78rem;font-weight:600;text-align:center;text-decoration:none;transition:opacity .15s}.rd-hotel-btn:hover{opacity:.85}.rd-hotel-btn--booking{background:#003580;color:#fff}.rd-hotel-btn--agoda{background:#ff5e1f;color:#fff}.rd-hotel-cta-row>.rd-hotel-btn:only-child{grid-column:1 / -1}@media (max-width: 600px){.rd-airport-grid{grid-template-columns:1fr}}.rd-stay22-wrapper{width:100%;background:var(--color-dark-3);border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.06)}.rd-stay22-disclosure{margin:.6rem 0 0;font-size:.7rem;color:var(--color-text-muted);opacity:.65;text-align:center;font-style:italic}@media (max-width: 600px){.rd-stay22-wrapper iframe{height:420px!important}}.rd-provider-row{display:flex;flex-wrap:wrap;gap:.45rem;margin:.85rem 0 1rem}.rd-provider-chip{font-size:.72rem;font-weight:600;padding:.3rem .7rem;border-radius:999px;letter-spacing:.02em;color:#fff;white-space:nowrap}.rd-provider-chip--booking{background:#003580}.rd-provider-chip--agoda{background:#ff5e1f}.rd-provider-chip--expedia{background:#00355f}.rd-provider-chip--hotels{background:#d32f2f}.rd-provider-chip--vrbo{background:#245fc1}.rd-provider-chip--trip{background:#2681ff}.rd-provider-cta{margin-top:1rem;padding:1rem;background:var(--color-dark-3);border:1px solid rgba(255,255,255,.06);border-radius:10px}.rd-provider-cta-label{margin:0 0 .75rem;font-size:.85rem;color:var(--color-text-muted);font-weight:500}.rd-provider-btn-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.5rem}.rd-provider-btn{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.7rem 1rem;border-radius:8px;text-decoration:none;color:#fff;font-weight:600;font-size:.85rem;transition:transform .15s,opacity .15s,box-shadow .15s;letter-spacing:.01em}.rd-provider-btn:hover{transform:translateY(-2px);opacity:.95;box-shadow:0 6px 16px #0000004d}.rd-provider-btn-arrow{font-size:1rem;opacity:.85;transition:transform .15s}.rd-provider-btn:hover .rd-provider-btn-arrow{transform:translate(3px)}.rd-provider-btn--booking{background:#003580}.rd-provider-btn--agoda{background:#ff5e1f}.rd-provider-btn--expedia{background:#00355f}.rd-provider-btn--hotels{background:#d32f2f}.rd-provider-btn--vrbo{background:#245fc1}.rd-provider-btn--trip{background:#2681ff}@media (max-width: 480px){.rd-provider-btn-row{grid-template-columns:repeat(2,1fr)}}.rd-filter-bar{display:flex;flex-direction:column;gap:.6rem;margin:.85rem 0 1rem;padding:.85rem 1rem;background:var(--color-dark-3);border:1px solid rgba(255,255,255,.06);border-radius:10px}.rd-filter-bar-left{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.rd-filter-label{font-size:.78rem;color:var(--color-text-muted);font-weight:600;letter-spacing:.02em;text-transform:uppercase}.rd-filter-quick{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--color-text);padding:.3rem .7rem;border-radius:999px;font-size:.7rem;cursor:pointer;font-weight:600;transition:all .15s}.rd-filter-quick:hover{background:var(--color-accent);color:var(--color-dark-1);border-color:var(--color-accent)}.rd-filter-checks{display:flex;flex-wrap:wrap;gap:.5rem}.rd-filter-check{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .75rem;border:1px solid rgba(255,255,255,.1);border-radius:999px;cursor:pointer;font-size:.78rem;background:#ffffff05;color:var(--color-text-muted);transition:all .15s;-webkit-user-select:none;user-select:none}.rd-filter-check:hover{background:#ffffff0d}.rd-filter-check input[type=checkbox]{width:.95rem;height:.95rem;cursor:pointer;accent-color:var(--color-accent)}.rd-filter-check--on{color:var(--color-text);font-weight:600}.rd-filter-dot{display:inline-block;width:.55rem;height:.55rem;border-radius:50%}.rd-filter-name{white-space:nowrap}.rd-provider-tabs{display:flex;flex-direction:column;gap:.55rem;margin:.85rem 0 1rem}.rd-provider-tabs-label{font-size:.78rem;color:var(--color-text-muted);font-weight:600;letter-spacing:.02em;text-transform:uppercase}.rd-provider-tabs-row{display:flex;flex-wrap:wrap;gap:.45rem}.rd-provider-tab{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .85rem;border:1px solid rgba(255,255,255,.08);border-radius:999px;cursor:pointer;font-size:.78rem;background:var(--color-dark-3);color:var(--color-text-muted);transition:all .15s;font-weight:500;font-family:inherit}.rd-provider-tab:hover{border-color:#fff3;color:var(--color-text)}.rd-provider-tab--active{font-weight:700}.rd-provider-tab-dot{display:inline-block;width:.55rem;height:.55rem;border-radius:50%}.rd-stay22-tip{margin:.75rem 0 0;font-size:.78rem;color:var(--color-text-muted);line-height:1.5;padding:.6rem .85rem;background:#c8a96e14;border-left:3px solid var(--color-accent);border-radius:4px}.rd-provider-cta-footer{margin:.75rem 0 0;font-size:.7rem;color:var(--color-text-muted);opacity:.6;font-style:italic;text-align:center}.rd-compare-btn{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:linear-gradient(135deg,var(--color-accent) 0%,#b3935f 100%);color:var(--color-dark-1);border-radius:10px;text-decoration:none;transition:transform .15s,box-shadow .15s;font-weight:600;width:100%}.rd-compare-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px #c8a96e40}.rd-compare-btn-icon{font-size:1.5rem;flex-shrink:0}.rd-compare-btn-text{display:flex;flex-direction:column;gap:.15rem;flex:1}.rd-compare-btn-text strong{font-size:.95rem;font-weight:700}.rd-compare-btn-text small{font-size:.75rem;opacity:.75;font-weight:500}.rd-compare-btn-arrow{font-size:1.4rem;font-weight:700;transition:transform .15s}.rd-compare-btn:hover .rd-compare-btn-arrow{transform:translate(4px)}.rd-hotel-cta-stack{display:flex;flex-direction:column;gap:.6rem}.rd-agoda-btn{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:linear-gradient(135deg,#ff5e1f,#d44913);color:#fff;border-radius:10px;text-decoration:none;transition:transform .15s,box-shadow .15s;font-weight:600;width:100%}.rd-agoda-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px #ff5e1f4d}.rd-agoda-btn-icon{font-size:1.4rem;flex-shrink:0}.rd-agoda-btn-text{display:flex;flex-direction:column;gap:.15rem;flex:1}.rd-agoda-btn-text strong{font-size:.95rem;font-weight:700}.rd-agoda-btn-text small{font-size:.75rem;opacity:.85;font-weight:500}.rd-agoda-btn-arrow{font-size:1.4rem;font-weight:700;transition:transform .15s}.rd-agoda-btn:hover .rd-agoda-btn-arrow{transform:translate(4px)}.rg-section{margin-bottom:2.5rem}.rg-stage{position:relative;width:100%;height:420px;border-radius:16px;overflow:hidden;background:#0d1525;cursor:zoom-in;-webkit-user-select:none;user-select:none}.rg-slide{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .45s ease;pointer-events:none}.rg-slide--active{opacity:1;pointer-events:auto}.rg-skeleton{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#1a2235 25%,#222d42,#1a2235 75%);background-size:200% 100%;animation:rg-shimmer 1.4s infinite}@keyframes rg-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.rg-img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .3s ease;display:block}.rg-img--loaded{opacity:1}.rg-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#0000008c;color:#fff;border:none;border-radius:50%;width:44px;height:44px;font-size:1.6rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:background .2s ease,transform .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.rg-arrow--prev{left:14px}.rg-arrow--next{right:14px}.rg-arrow:hover{background:#c8a96ed9;transform:translateY(-50%) scale(1.08)}.rg-counter{position:absolute;bottom:14px;left:50%;transform:translate(-50%);background:#0009;color:#e2e8f0;font-size:.78rem;font-weight:600;padding:3px 12px;border-radius:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;z-index:10}.rg-expand{position:absolute;top:12px;right:12px;background:#0000008c;color:#fff;border:none;border-radius:8px;width:36px;height:36px;font-size:1.1rem;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;opacity:0;transition:opacity .2s ease,background .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.rg-stage:hover .rg-expand{opacity:1}.rg-expand:hover{background:#c8a96ed9}.rg-thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.rg-thumbs::-webkit-scrollbar{display:none}.rg-thumb{flex:0 0 72px;height:52px;border-radius:8px;overflow:hidden;border:2px solid transparent;padding:0;cursor:pointer;transition:border-color .2s ease,opacity .2s ease;background:#0d1525;opacity:.6}.rg-thumb img{width:100%;height:100%;object-fit:cover;display:block}.rg-thumb--active{border-color:var(--color-accent);opacity:1}.rg-thumb:hover:not(.rg-thumb--active){opacity:.9;border-color:#c8a96e66}.rg-dots{display:none;justify-content:center;gap:6px;margin-top:10px}.rg-dot{width:8px;height:8px;border-radius:50%;border:none;background:#ffffff40;cursor:pointer;transition:background .2s ease,transform .2s ease;padding:0}.rg-dot--active{background:var(--color-accent);transform:scale(1.3)}.rg-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000eb;z-index:9000;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:rg-lb-in .2s ease}@keyframes rg-lb-in{0%{opacity:0}to{opacity:1}}.rg-lb-stage{max-width:92vw;max-height:88vh;display:flex;align-items:center;justify-content:center}.rg-lb-img{max-width:92vw;max-height:88vh;width:auto;height:auto;object-fit:contain;border-radius:10px;box-shadow:0 25px 80px #000000b3;animation:rg-lb-img-in .25s ease}@keyframes rg-lb-img-in{0%{transform:scale(.93);opacity:0}to{transform:scale(1);opacity:1}}.rg-lb-close{position:fixed;top:20px;right:24px;background:#ffffff1f;color:#fff;border:none;border-radius:50%;width:44px;height:44px;font-size:1.1rem;cursor:pointer;z-index:9001;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.rg-lb-close:hover{background:#c8a96eb3}.rg-lb-arrow{position:fixed;top:50%;transform:translateY(-50%);background:#ffffff1f;color:#fff;border:none;border-radius:50%;width:52px;height:52px;font-size:2rem;line-height:1;cursor:pointer;z-index:9001;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease}.rg-lb-arrow--prev{left:20px}.rg-lb-arrow--next{right:20px}.rg-lb-arrow:hover{background:#c8a96eb3;transform:translateY(-50%) scale(1.08)}.rg-lb-counter{position:fixed;bottom:24px;left:50%;transform:translate(-50%);color:#ffffffbf;font-size:.9rem;font-weight:600;pointer-events:none}@media (max-width: 768px){.rg-stage{height:280px;border-radius:12px}.rg-thumb{flex:0 0 56px;height:42px}.rg-thumbs{display:none}.rg-dots{display:flex}.rg-arrow{width:36px;height:36px;font-size:1.3rem}.rg-arrow--prev{left:8px}.rg-arrow--next{right:8px}.rg-lb-arrow{width:42px;height:42px;font-size:1.6rem}.rg-lb-arrow--prev{left:8px}.rg-lb-arrow--next{right:8px}}.rv-section{margin-bottom:2.5rem}.rv-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:1.25rem}.rv-summary{display:flex;align-items:center;gap:8px}.rv-avg{font-size:1.5rem;font-weight:700;color:var(--color-accent)}.rv-count{color:var(--color-text-muted);font-size:.9rem}.rv-stars{display:inline-flex;gap:2px;line-height:1}.rv-star{color:#ffffff2e;transition:color .15s ease}.rv-star--filled{color:#f5b800}.rv-star-input{display:inline-flex;gap:4px;margin-bottom:1rem}.rv-star-btn{background:none;border:none;font-size:1.8rem;color:#ffffff2e;cursor:pointer;padding:0 2px;transition:color .15s ease,transform .1s ease;line-height:1}.rv-star-btn:hover{transform:scale(1.15)}.rv-star-btn--on{color:#f5b800}.rv-cta-card{background:#c8a96e0f;border:1px dashed rgba(200,169,110,.3);border-radius:12px;padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:1.5rem}.rv-cta-card p{margin:0;color:var(--color-text)}.rv-cta-card--has{background:#22c55e0f;border-color:#22c55e40}.rv-signin-btn{padding:.6rem 1.4rem}.rv-form{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.rv-form-label{display:block;font-size:.85rem;font-weight:600;color:var(--color-text-muted);margin-bottom:.5rem;margin-top:.5rem;letter-spacing:.04em;text-transform:uppercase}.rv-textarea{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:.8rem 1rem;color:var(--color-text);font-family:inherit;font-size:.95rem;resize:vertical;min-height:100px;transition:border-color .15s ease}.rv-textarea:focus{outline:none;border-color:var(--color-accent)}.rv-form-meta{display:flex;justify-content:flex-end;margin-top:.4rem}.rv-char-count{font-size:.75rem;color:var(--color-text-muted)}.rv-error{color:#f87171;font-size:.85rem;margin:.6rem 0 0}.rv-form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:1rem}.rv-empty{text-align:center;color:var(--color-text-muted);padding:2rem 1rem;background:#ffffff05;border-radius:12px;font-size:.95rem}.rv-list{display:flex;flex-direction:column;gap:1rem}.rv-item{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.1rem 1.25rem;transition:border-color .15s ease}.rv-item:hover{border-color:#c8a96e33}.rv-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.6rem;gap:8px}.rv-item-user{display:flex;gap:12px;align-items:center}.rv-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--color-blue)}.rv-avatar--ph{display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--color-accent);background:#c8a96e26;font-size:1.1rem}.rv-item-name{margin:0;font-weight:600;font-size:.95rem;color:var(--color-text)}.rv-item-sub{display:flex;align-items:center;gap:6px;margin-top:2px}.rv-item-date{font-size:.78rem;color:var(--color-text-muted)}.rv-delete-btn{background:#ef444414;border:1px solid rgba(239,68,68,.2);color:#f87171;border-radius:6px;width:32px;height:32px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:background .15s ease;flex-shrink:0}.rv-delete-btn:hover{background:#ef444433}.rv-item-text{color:var(--color-text);line-height:1.55;margin:.6rem 0 0;white-space:pre-wrap;word-break:break-word;font-size:.95rem}@media (max-width: 768px){.rv-cta-card{flex-direction:column;align-items:stretch;text-align:center}.rv-form-actions{flex-direction:column-reverse}.rv-form-actions .btn{width:100%}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at top,#1e3a5f 0%,var(--color-dark) 60%);padding:2rem 1rem;position:relative}.login-page-topbar{position:absolute;top:1.25rem;right:1.25rem;display:flex;align-items:center;gap:.5rem;z-index:10}.login-card{background:#111827d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06);border-radius:20px;padding:3rem 2.5rem;max-width:420px;width:100%;text-align:center;box-shadow:0 25px 80px #0006}.login-logo{display:inline-block;font-family:var(--font-serif);font-size:1.6rem;font-weight:700;color:var(--color-text);margin-bottom:1.5rem;letter-spacing:-.02em}.login-logo span{color:var(--color-accent)}.login-title{font-size:1.6rem;font-weight:700;margin:0 0 .6rem;color:var(--color-text)}.login-subtitle{font-size:.95rem;color:var(--color-text-muted);line-height:1.55;margin:0 0 2rem}.login-google-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;background:#fff;color:#1f2937;border-radius:10px;padding:.85rem 1rem;font-weight:600;font-size:.95rem;border:1px solid rgba(0,0,0,.08);transition:transform .15s ease,box-shadow .15s ease;margin-bottom:1.25rem}.login-google-btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px #ffffff1f}.login-fineprint{font-size:.78rem;color:var(--color-text-muted);line-height:1.5;margin:0 0 2rem}.login-back{display:inline-block;font-size:.88rem;color:var(--color-accent);transition:color .15s ease}.login-back:hover{color:var(--color-accent-light)}.page-loader-spinner{width:40px;height:40px;border:3px solid var(--color-border, #e2e8f0);border-top-color:var(--color-accent, #3b82f6);border-radius:50%;animation:page-loader-spin .7s linear infinite}@keyframes page-loader-spin{to{transform:rotate(360deg)}}.home-v2-root,.home-v2-root p,.home-v2-root span,.home-v2-root a,.home-v2-root li,.home-v2-root button,.home-v2-root input,.home-v2-root select,.home-v2-root label,.home-v2-root small{font-family:Helvetica Neue,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.home-v2-root h1,.home-v2-root h2,.home-v2-root h3,.home-v2-root h4,.home-v2-root .hero-title,.home-v2-root .hero-stat-number,.home-v2-root .section-title,.home-v2-root .v2-planner-title,.home-v2-root .v2-essential-title,.home-v2-root .v2-guide-title,.home-v2-root .v2-map-stat-num,.home-v2-root .v2-why-num,.home-v2-root .partner-title,.home-v2-root .cta-title,.home-v2-root .resort-card-name,.home-v2-root .instructor-name,.home-v2-root .hotel-name,.home-v2-root .shop-name,.home-v2-root .navbar-logo,.home-v2-root .footer-logo,.home-v2-root .v2-region-name{font-family:Georgia,Times New Roman,serif}.v2-planner-section{padding:60px 0 0;position:relative;z-index:5}.v2-planner-card{background:var(--color-dark-2);border:1px solid rgba(200,169,110,.18);border-radius:8px;padding:40px;max-width:1100px;margin:-80px auto 0;display:grid;grid-template-columns:1fr 2fr;gap:40px;align-items:center;box-shadow:0 20px 60px #00000073,0 0 40px #c8a96e14}@media (max-width: 880px){.v2-planner-card{grid-template-columns:1fr;gap:24px;padding:24px;margin-top:-40px}}.v2-planner-text{display:flex;flex-direction:column}.v2-planner-title{font-size:28px;font-weight:700;color:#fff;line-height:1.25;margin:0 0 12px}.v2-planner-title em{color:var(--color-accent-light, #e0c489);font-style:italic;font-weight:700}.v2-planner-desc{font-size:14px;color:var(--color-text-muted);margin:0;line-height:1.55}.v2-planner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media (max-width: 880px){.v2-planner-grid{grid-template-columns:1fr 1fr}}.v2-planner-field{padding:16px;background:var(--color-dark-3);border-radius:6px;border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;min-width:0}.v2-planner-field label{display:block;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--color-accent-light, #e0c489);margin-bottom:6px}.v2-planner-field input,.v2-planner-field select{width:100%;border:none;background:transparent;font-size:16px;color:#fff;font-weight:500;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;color-scheme:dark}.v2-planner-field select option{background-color:var(--color-dark-3, #1a2235);color:#fff;font-weight:500;padding:8px 12px}.v2-planner-field select option:checked,.v2-planner-field select option:hover{background-color:#c8a96e2e;color:var(--color-accent)}.v2-planner-field input::placeholder{color:#fff6}.v2-planner-field input:focus,.v2-planner-field select:focus{outline:none}.v2-planner-field--themed,.v2-themed-select{position:relative}.v2-themed-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;background:transparent;border:none;padding:0;cursor:pointer;font-family:inherit;font-size:16px;font-weight:500;color:#fff;text-align:left;outline:none}.v2-themed-select-trigger:focus-visible{outline:1px solid rgba(200,169,110,.4);outline-offset:4px;border-radius:4px}.v2-themed-select-caret{font-size:.7rem;color:var(--color-accent);margin-left:4px;transition:transform .15s}.v2-themed-select-trigger[aria-expanded=true] .v2-themed-select-caret{transform:rotate(180deg)}.v2-themed-select-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:60;min-width:100%;width:max-content;max-width:calc(100vw - 32px);background:#0a0e1afa;border:1px solid rgba(200,169,110,.25);border-radius:8px;padding:4px;margin:0;list-style:none;box-shadow:0 12px 32px #0009,0 0 0 1px #0000004d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);max-height:280px;overflow-y:auto;animation:themedSelectIn .12s ease}@keyframes themedSelectIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.v2-themed-select-option{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;background:transparent;border:0;border-radius:6px;padding:.55rem .7rem;cursor:pointer;font-family:inherit;font-size:14px;font-weight:500;color:var(--color-text);text-align:left;white-space:nowrap;transition:background .12s,color .12s}.v2-themed-select-option:hover{background:#c8a96e1f;color:#fff}.v2-themed-select-option.is-selected{background:#c8a96e2e;color:var(--color-accent);font-weight:600}.v2-themed-select-check{color:var(--color-accent);font-size:.85rem;flex-shrink:0}.v2-planner-field--date{position:relative;cursor:pointer}.v2-planner-date-display{font-size:16px;color:#fff;font-weight:500;line-height:1.4;min-height:22px}.v2-planner-date-placeholder{color:#fff6;font-weight:400}.v2-planner-date-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:50;background:var(--color-dark-3, #1a2235);border:1px solid rgba(200,169,110,.25);border-radius:8px;padding:8px;box-shadow:0 20px 60px #0009,0 0 0 1px #c8a96e14;cursor:default;min-width:320px;max-width:calc(100vw - 32px)}@media (max-width: 520px){.v2-planner-date-popover{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(100vw - 32px);max-width:360px;max-height:calc(100vh - 64px);overflow-y:auto}}.v2-planner-date-actions{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-top:1px solid rgba(255,255,255,.08);margin-top:8px}.v2-planner-date-btn-clear,.v2-planner-date-btn-close{font-family:inherit;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:6px 14px;border-radius:4px;cursor:pointer;transition:all .2s}.v2-planner-date-btn-clear{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--color-text-muted, #94a3b8)}.v2-planner-date-btn-clear:hover{border-color:var(--color-accent);color:var(--color-accent)}.v2-planner-date-btn-close{background:var(--color-accent);border:0;color:var(--color-dark)}.v2-planner-date-btn-close:hover{background:var(--color-accent-light)}.v2-planner-date-popover .rdp-root{--rdp-accent-color: var(--color-accent);--rdp-accent-background-color: rgba(200, 169, 110, .18);--rdp-background-color: transparent;--rdp-today-color: var(--color-accent);--rdp-range_middle-background-color: rgba(200, 169, 110, .15);--rdp-range_start-color: var(--color-dark);--rdp-range_end-color: var(--color-dark);--rdp-selected-border: 1px solid var(--color-accent);--rdp-day-height: 36px;--rdp-day-width: 36px;--rdp-day_button-height: 34px;--rdp-day_button-width: 34px;--rdp-weekday-padding: 6px 0;--rdp-nav_button-height: 28px;--rdp-nav_button-width: 28px;color:#fff;font-size:13px;margin:0;padding:8px 4px 4px}.v2-planner-date-popover .rdp-month_caption{font-family:var(--font-serif);font-size:15px;font-weight:600;color:#fff;padding:4px 8px}.v2-planner-date-popover .rdp-weekday{color:var(--color-text-muted, #94a3b8);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.v2-planner-date-popover .rdp-day{color:#ffffffd9;font-size:13px}.v2-planner-date-popover .rdp-day_button{border-radius:6px}.v2-planner-date-popover .rdp-day_button:hover:not([disabled]){background:#c8a96e1f;color:#fff}.v2-planner-date-popover .rdp-outside{color:#ffffff40}.v2-planner-date-popover .rdp-today:not(.rdp-selected) .rdp-day_button{color:var(--color-accent);font-weight:700;border:1px solid rgba(200,169,110,.4)}.v2-planner-date-popover .rdp-selected .rdp-day_button{background:var(--color-accent);color:var(--color-dark);font-weight:700;border:0}.v2-planner-date-popover .rdp-range_middle .rdp-day_button{background:#c8a96e2e;color:#fff;border-radius:0}.v2-planner-date-popover .rdp-range_start .rdp-day_button{border-radius:6px 0 0 6px}.v2-planner-date-popover .rdp-range_end .rdp-day_button{border-radius:0 6px 6px 0}.v2-planner-date-popover .rdp-disabled .rdp-day_button{color:#ffffff2e;cursor:not-allowed}.v2-planner-date-popover .rdp-nav button{color:var(--color-accent);background:transparent;border-radius:6px}.v2-planner-date-popover .rdp-nav button:hover:not([disabled]){background:#c8a96e1f}.v2-planner-date-popover .rdp-chevron{fill:currentColor}.v2-planner-field select{background-image:linear-gradient(45deg,transparent 50%,var(--color-accent) 50%),linear-gradient(135deg,var(--color-accent) 50%,transparent 50%);background-position:calc(100% - 10px) 50%,calc(100% - 5px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:16px}.v2-planner-search{grid-column:span 4;background:var(--color-accent);color:var(--color-dark);padding:14px;border:none;border-radius:6px;font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;cursor:pointer;margin-top:8px;transition:background .2s,transform .2s,box-shadow .2s}@media (max-width: 880px){.v2-planner-search{grid-column:1 / -1}}.v2-planner-search:hover{background:var(--color-accent-light);transform:translateY(-2px);box-shadow:0 8px 24px #c8a96e59}.v2-region-section{padding:80px 24px;background:#fff;color:#2a2a2a}.home-v2-root .v2-region-section .section-label{color:#c9a55c}.home-v2-root .v2-region-section .section-title{color:#1a2235}.home-v2-root .v2-region-section .section-title em{color:#a08544;font-style:italic;font-weight:700}.home-v2-root .v2-region-section .btn-outline{color:#1a2235;border-color:#1a223540}.home-v2-root .v2-region-section .btn-outline:hover{border-color:#c9a55c;color:#a08544}.v2-region-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:48px;flex-wrap:wrap}.v2-region-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width: 880px){.v2-region-grid{grid-template-columns:1fr}}.v2-region-card{position:relative;display:block;height:360px;border-radius:8px;overflow:hidden;cursor:pointer;background-size:cover;background-position:center;text-decoration:none;color:inherit;transition:transform .4s var(--ease-luxe, ease),box-shadow .3s}.v2-region-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px #00000080}.v2-region-card-content{position:absolute;bottom:0;padding:32px;color:#fff}.v2-region-name{font-family:Georgia,Times New Roman,serif;font-size:32px;font-weight:700;margin-bottom:6px;line-height:1.2;color:#fff}.v2-region-name em{font-style:italic;color:var(--color-accent-light, #e0c489);font-weight:700}.v2-region-meta{font-family:Helvetica Neue,-apple-system,sans-serif;font-size:13px;opacity:.9;letter-spacing:1px;color:#fff}.v2-map-section{padding:4rem 0;background:var(--color-darker, #060912)}.v2-map-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.v2-map-view-all{color:var(--color-accent-light);font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s;padding-bottom:2px}.v2-map-view-all:hover{border-color:var(--color-accent-light)}.v2-map-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.v2-map-chip{padding:.5rem .95rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:999px;color:var(--color-text-muted);font-family:var(--font-sans);font-size:.78rem;font-weight:500;letter-spacing:.02em;cursor:pointer;transition:all .2s;white-space:nowrap}.v2-map-chip:hover{border-color:#c8a96e4d;color:#fff}.v2-map-chip.active{background:var(--color-accent-soft, rgba(200, 169, 110, .18));border-color:var(--color-accent);color:var(--color-accent)}.v2-map-container{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1.25rem;margin-bottom:1.5rem}@media (max-width: 980px){.v2-map-container{grid-template-columns:1fr}}.v2-map-canvas{border:1px solid rgba(255,255,255,.06);border-radius:8px;overflow:hidden;min-height:480px}.v2-map-sidebar{background:var(--color-dark-2);border:1px solid rgba(255,255,255,.06);border-radius:8px;display:flex;flex-direction:column;max-height:520px;overflow:hidden}.v2-map-sidebar-head{padding:.85rem 1rem;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between;gap:.75rem}.v2-map-sidebar-title{font-size:.7rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-muted)}.v2-map-sidebar-count{font-size:.7rem;color:var(--color-accent);font-weight:700}.v2-map-sidebar-list{flex:1;overflow-y:auto;padding:.5rem;scrollbar-width:thin;scrollbar-color:var(--color-accent) transparent}.v2-map-sidebar-list::-webkit-scrollbar{width:6px}.v2-map-sidebar-list::-webkit-scrollbar-thumb{background:var(--color-accent);border-radius:3px}.v2-map-sidebar-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .65rem;border-radius:4px;text-decoration:none;color:inherit;transition:background .15s}.v2-map-sidebar-item:hover{background:#c8a96e14}.v2-map-sidebar-dot{flex-shrink:0;width:8px;height:8px;border-radius:50%;border:1px solid rgba(255,255,255,.4)}.v2-map-sidebar-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.v2-map-sidebar-name{font-size:.82rem;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-map-sidebar-region{font-size:.7rem;color:var(--color-text-muted)}.v2-map-sidebar-meta{flex-shrink:0;font-size:.7rem;color:var(--color-accent);font-weight:600}.v2-map-sidebar-empty{text-align:center;padding:2rem 1rem;font-size:.8rem;color:var(--color-text-muted)}.v2-map-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}@media (max-width: 600px){.v2-map-stats{grid-template-columns:repeat(2,1fr)}}.v2-map-stat{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:6px;padding:1rem;text-align:center}.v2-map-stat-num{display:block;font-family:var(--font-serif);font-size:1.75rem;font-weight:700;color:var(--color-accent);line-height:1;margin-bottom:.4rem}.v2-map-stat-label{font-size:.7rem;color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase}.v2-essentials-section{padding:4rem 0;background:linear-gradient(180deg,var(--color-darker, #060912),var(--color-dark));position:relative}.v2-essentials-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 0%,rgba(200,169,110,.06),transparent 60%);pointer-events:none}.v2-essentials-head{position:relative;z-index:2;margin-bottom:2rem}.v2-essentials-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}@media (max-width: 980px){.v2-essentials-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 520px){.v2-essentials-grid{grid-template-columns:1fr}}.v2-essential-card{display:flex;flex-direction:column;gap:.5rem;padding:1.5rem;background:var(--color-dark-3);border:1px solid rgba(200,169,110,.18);border-radius:8px;text-decoration:none;color:inherit;transition:all .3s;position:relative}.v2-essential-card:hover{transform:translateY(-4px);border-color:var(--color-accent);box-shadow:0 16px 40px #c8a96e26,0 0 30px #c8a96e1a}.v2-essential-icon{font-size:2rem;line-height:1;margin-bottom:.5rem}.v2-essential-title{font-family:var(--font-serif);font-size:1.1rem;font-weight:600;color:#fff;margin:0}.v2-essential-desc{font-size:.8rem;color:var(--color-text-muted);line-height:1.55;margin:0;flex:1}.v2-essential-price{font-size:.85rem;font-weight:700;color:var(--color-accent);margin-top:.5rem}.v2-essential-cta{font-size:.72rem;font-weight:700;color:var(--color-accent-light);letter-spacing:.1em;text-transform:uppercase;border-top:1px solid rgba(200,169,110,.15);padding-top:.75rem;margin-top:.5rem}.v2-essential-card--insurance{background-image:linear-gradient(to right,#0a0e1af5,#0a0e1ad9 45%,#0a0e1a8c 80%,#0a0e1a59),url(/images/insurance-msig.jpg);background-size:cover;background-position:right 70%;background-repeat:no-repeat;border-color:#c8a96e52}.v2-essential-card--insurance .v2-essential-title,.v2-essential-card--insurance .v2-essential-desc,.v2-essential-card--insurance .v2-essential-price,.v2-essential-card--insurance .v2-essential-cta{text-shadow:0 1px 4px rgba(0,0,0,.85),0 0 12px rgba(0,0,0,.5);position:relative}.v2-essential-card--insurance .v2-essential-desc{color:#ffffffe0}.v2-essential-card--insurance .v2-essential-cta{border-top-color:#ffffff38}.v2-essential-card--insurance:hover{border-color:var(--color-accent);box-shadow:0 16px 40px #c8a96e40,0 0 30px #c8a96e26}.v2-guides-section{padding:4rem 0}.v2-guides-head{margin-bottom:2rem;display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.v2-guides-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr;gap:1.25rem}@media (max-width: 880px){.v2-guides-grid{grid-template-columns:1fr}}.v2-guide-card{display:flex;flex-direction:column;background:var(--color-dark-2);border:1px solid rgba(255,255,255,.06);border-radius:8px;overflow:hidden;text-decoration:none;color:inherit;transition:all .3s}.v2-guide-card:hover{border-color:#c8a96e59;transform:translateY(-3px);box-shadow:0 12px 30px #0006}.v2-guide-card--featured{grid-row:span 1}.v2-guide-card--featured .v2-guide-image{aspect-ratio:16/10}.v2-guide-image{position:relative;aspect-ratio:4/3;background-size:cover;background-position:center;background-color:var(--color-dark-3)}.v2-guide-image-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 50%,rgba(10,14,26,.4))}.v2-guide-body{padding:1.25rem;display:flex;flex-direction:column;gap:.5rem;flex:1}.v2-guide-tag{align-self:flex-start;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);background:#c8a96e1f;border:1px solid rgba(200,169,110,.25);padding:3px 10px;border-radius:999px}.v2-guide-title{font-family:var(--font-serif);font-size:1.05rem;font-weight:600;color:#fff;line-height:1.35;margin:0}.v2-guide-card--featured .v2-guide-title{font-size:1.4rem}.v2-guide-meta{font-size:.75rem;color:var(--color-text-muted);margin-top:auto}.v2-why-section{padding:4rem 0;background:var(--color-dark-2)}.v2-why-head{text-align:center;margin-bottom:2.5rem}.v2-why-head .section-label{display:inline-block}.v2-why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}@media (max-width: 720px){.v2-why-grid{grid-template-columns:repeat(2,1fr)}}.v2-why-item{text-align:center;padding:1.5rem 1rem;border:1px solid rgba(200,169,110,.12);border-radius:8px;background:#c8a96e08}.v2-why-num{font-family:var(--font-serif);font-size:2.75rem;font-weight:700;color:var(--color-accent);line-height:1}.v2-why-label{margin-top:.5rem;font-size:.78rem;color:var(--color-text-muted);letter-spacing:.05em}.v2-newsletter-section{padding:5rem 0;background:linear-gradient(180deg,var(--color-dark),var(--color-darker, #060912));position:relative;overflow:hidden}.v2-newsletter-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 50%,rgba(200,169,110,.08),transparent 70%);pointer-events:none}.v2-newsletter-inner{position:relative;z-index:2;max-width:640px;margin:0 auto;text-align:center}.v2-newsletter-inner .section-label{display:inline-block}.v2-newsletter-inner .section-title{margin:.75rem 0 1rem}.v2-newsletter-inner .section-title em{color:var(--color-accent);font-style:italic}.v2-newsletter-desc{font-size:1rem;color:var(--color-text-muted);line-height:1.6;margin:0 0 2rem}.v2-newsletter-form{display:flex;gap:.5rem;max-width:480px;margin:0 auto}@media (max-width: 520px){.v2-newsletter-form{flex-direction:column}}.v2-newsletter-form input{flex:1;padding:.85rem 1rem;background:var(--color-dark-3);border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#fff;font-family:var(--font-sans);font-size:.9rem}.v2-newsletter-form input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #c8a96e2e}.v2-newsletter-fineprint{font-size:.72rem;color:var(--color-text-muted);margin:1rem 0 0}.guides-index-hero{padding:5rem 0 3rem;text-align:center;background:linear-gradient(180deg,var(--color-darker, #060912),var(--color-dark))}.guides-index-hero .section-label{display:inline-block;margin-bottom:.75rem}.guides-index-title{font-family:var(--font-serif);font-size:clamp(2.25rem,5vw,3.5rem);font-weight:700;color:#fff;line-height:1.15;margin-bottom:1rem}.guides-index-title em{color:var(--color-accent);font-style:italic}.guides-index-desc{max-width:580px;margin:0 auto;color:var(--color-text-muted);font-size:1rem;line-height:1.6}.guides-index-list{padding:3rem 0 6rem}.guides-index-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.guides-index-excerpt{font-size:.85rem;color:var(--color-text-muted);line-height:1.55;margin:0}.guide-article-hero{position:relative;min-height:56vh;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:6rem 0 3rem;overflow:hidden}.guide-article-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0a0e1a80,#0a0e1ae6 90%)}.guide-article-hero-content{position:relative;z-index:2;max-width:760px;display:flex;flex-direction:column;gap:.85rem}.guide-article-title{font-family:var(--font-serif);font-size:clamp(1.75rem,4vw,2.75rem);font-weight:700;color:#fff;line-height:1.2}.guide-article-excerpt{font-size:1.05rem;line-height:1.6;color:var(--color-text);max-width:600px}.guide-article-meta{font-size:.78rem;color:var(--color-accent);letter-spacing:.05em}.guide-article{padding:3rem 0 5rem}.guide-article-body{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:1.25rem}.guide-section-h2{font-family:var(--font-serif);font-size:1.4rem;font-weight:600;color:#fff;border-left:3px solid var(--color-accent);padding-left:.85rem;margin:1.5rem 0 .5rem;line-height:1.3}.guide-section-p{font-size:.98rem;line-height:1.8;color:var(--color-text)}.guide-section-p strong{color:#fff;font-weight:600}.guide-section-p em{color:var(--color-accent);font-style:italic}.guide-section-ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.guide-section-ul li{padding:.6rem .85rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-left:2px solid var(--color-accent);border-radius:4px;font-size:.92rem;line-height:1.6;color:var(--color-text)}.guide-section-ul li strong{color:var(--color-accent)}.guide-article-related{max-width:760px;margin:4rem auto 0}.guide-article-related .section-label{display:block;margin-bottom:1.25rem}.guide-related-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}@media (max-width: 640px){.guide-related-grid{grid-template-columns:1fr}}.legal-page{padding:4rem 0 6rem;min-height:80vh}.legal-page-head{max-width:780px;margin:0 auto 2.5rem;text-align:center}.legal-page-head .section-label{display:inline-block}.legal-page-title{font-family:var(--font-serif);font-size:clamp(2rem,4vw,2.75rem);font-weight:700;color:#fff;margin:.75rem 0 .5rem;line-height:1.2}.legal-page-updated{font-size:.78rem;color:var(--color-text-muted);letter-spacing:.05em}.legal-page-body{max-width:780px;margin:0 auto;display:flex;flex-direction:column;gap:2rem}.legal-page-body section{display:flex;flex-direction:column;gap:.75rem}.legal-page-body h2{font-family:var(--font-serif);font-size:1.35rem;font-weight:600;color:#fff;border-left:3px solid var(--color-accent);padding-left:.85rem;line-height:1.3}.legal-page-body p{font-size:.95rem;line-height:1.7;color:var(--color-text)}.legal-page-body ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.legal-page-body ul li{padding:.65rem .85rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-left:2px solid var(--color-accent);border-radius:4px;font-size:.88rem;color:var(--color-text)}.legal-page-body ul li strong{color:var(--color-accent);margin-right:.4rem}.rl-qp-banner{display:flex;align-items:center;gap:1rem;padding:.85rem 1.1rem;background:linear-gradient(135deg,#c8a96e1a,#c8a96e0a);border:1px solid rgba(200,169,110,.3);border-radius:8px}.rl-qp-banner-icon{font-size:1.4rem;flex-shrink:0}.rl-qp-banner-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.4rem}.rl-qp-banner-title{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent)}.rl-qp-banner-chips{display:flex;flex-wrap:wrap;gap:.4rem}.rl-qp-chip{font-size:.75rem;padding:3px 9px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:#fff;white-space:nowrap}.rl-qp-banner-clear{flex-shrink:0;font-size:.72rem;font-weight:600;letter-spacing:.06em;padding:.45rem .85rem;background:transparent;border:1px solid rgba(255,255,255,.15);border-radius:4px;color:var(--color-text-muted);cursor:pointer;transition:all .2s}.rl-qp-banner-clear:hover{border-color:var(--color-accent);color:var(--color-accent)}@media (max-width: 640px){.rl-qp-banner{flex-direction:column;align-items:stretch}.rl-qp-banner-clear{align-self:flex-end}}.v2-footer-disclosure{margin:2rem auto 0;max-width:var(--container-max, 1280px);padding:1rem 1.25rem;background:#c8a96e0f;border:1px solid rgba(200,169,110,.18);border-radius:6px;display:flex;gap:.65rem;align-items:flex-start;font-size:.78rem;color:var(--color-text-muted);line-height:1.55}.v2-footer-disclosure-label{flex-shrink:0;color:var(--color-accent-light);font-weight:700}.v2-footer-disclosure-text{flex:1}.rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}
