
:root{--ink:#0a1f14;--forest:#1a3d2c;--moss:#2a6347;--mist:#d4eede;--cream:#faf8f3;--parch:#f2ede3;--gold:#b8922a;--gold-lt:#d4a843;--red:#ce2b37;--white:#fff;--mid:#3d5a47;--muted:#7a9485;--success:#16a34a;--success-bg:#dcfce7;--success-bd:#86efac;--medium:#d97706;--medium-bg:#fef3c7;--medium-bd:#fcd34d;--low-bg:#f3f4f6;--low-bd:#e5e7eb;--paypal:#25D366;--f-d:'Playfair Display',serif;--f-b:'DM Sans',sans-serif;--r-sm:6px;--r-md:12px;--r-lg:20px;--shadow:0 2px 16px rgba(10,31,20,0.1);--shadow-lg:0 8px 40px rgba(10,31,20,0.15);}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--f-b);background:var(--cream);color:var(--ink);line-height:1.6;}
.nav{background:rgba(250,248,243,0.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--mist);padding:0 20px;position:sticky;top:0;z-index:100;}
.nav-inner{max-width:1000px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:60px;gap:10px;}
.logo{display:flex;align-items:center;gap:8px;text-decoration:none;flex-shrink:0;}
.logo-mark{width:32px;height:32px;border-radius:7px;background:var(--forest);display:flex;align-items:center;justify-content:center;}
.logo-mark svg{width:18px;height:18px;}
.logo-name{font-family:var(--f-d);font-size:1rem;font-weight:700;color:var(--ink);}
.logo-name em{font-style:normal;color:var(--gold);}
.nav-right{display:flex;align-items:center;gap:8px;}
.lang-toggle{display:flex;background:var(--parch);border:1px solid var(--mist);border-radius:20px;overflow:hidden;}
.lang-btn{padding:5px 12px;font-size:0.75rem;font-weight:600;border:none;background:none;cursor:pointer;font-family:var(--f-b);color:var(--muted);transition:all 0.15s;}
.lang-btn.active{background:var(--forest);color:var(--white);}
.nav-cta{background:var(--forest);color:var(--white);font-size:0.8rem;font-weight:600;padding:8px 14px;border-radius:var(--r-sm);white-space:nowrap;border:none;cursor:pointer;font-family:var(--f-b);}
.hero{background:var(--forest);padding:36px 20px 28px;position:relative;overflow:hidden;}
.hero::after{content:'';position:absolute;right:0;top:0;bottom:0;width:5px;background:linear-gradient(to bottom,var(--moss) 33%,#fff 33%,#fff 67%,var(--red) 67%);opacity:0.7;}
.hero-inner{max-width:1000px;margin:0 auto;position:relative;z-index:1;}
.hero-tag{font-size:0.68rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold-lt);margin-bottom:8px;display:flex;align-items:center;gap:8px;}
.hero-tag::before{content:'';width:18px;height:1.5px;background:var(--gold-lt);}
.hero-title{font-family:var(--f-d);font-size:clamp(1.5rem,4vw,2.3rem);color:var(--white);margin-bottom:8px;line-height:1.2;}
.hero-title span{color:var(--gold-lt);}
.hero-sub{font-size:0.86rem;color:var(--mist);margin-bottom:16px;line-height:1.7;max-width:520px;}
.hero-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.live-dot{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px rgba(74,222,128,0.6);flex-shrink:0;}
.hero-badge{display:flex;align-items:center;gap:5px;font-size:0.78rem;color:var(--mist);}
.city-tabs-wrap{background:var(--white);border-bottom:2px solid var(--mist);position:sticky;top:60px;z-index:90;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.city-tabs{max-width:1000px;margin:0 auto;display:flex;padding:0 6px;gap:0;min-width:max-content;}
.city-tab{padding:12px 13px;font-size:0.82rem;font-weight:600;color:var(--muted);border:none;background:none;cursor:pointer;white-space:nowrap;position:relative;transition:color 0.15s;font-family:var(--f-b);}
.city-tab::after{content:'';position:absolute;bottom:-2px;left:0;right:0;height:2px;background:transparent;transition:background 0.15s;}
.city-tab.active{color:var(--forest);}
.city-tab.active::after{background:var(--forest);}
.city-tab-badge{display:inline-block;font-size:0.58rem;font-weight:700;margin-left:3px;padding:1px 5px;border-radius:8px;vertical-align:middle;}
.city-tab-badge.high{background:var(--success-bg);color:var(--success);}
.city-tab-badge.med{background:var(--medium-bg);color:var(--medium);}
.main{max-width:1000px;margin:0 auto;padding:22px 18px 80px;}
.page-layout{display:grid;grid-template-columns:1fr 290px;gap:28px;align-items:start;}
.city-header{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap;}
.city-name-big{font-family:var(--f-d);font-size:1.25rem;color:var(--ink);font-weight:700;}
.city-wait{font-size:0.76rem;color:var(--muted);background:var(--parch);padding:3px 10px;border-radius:20px;}
.legend{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px;}
.legend-item{display:flex;align-items:center;gap:5px;font-size:0.74rem;color:var(--mid);}
.legend-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0;}
.legend-dot.high{background:var(--success-bg);border:2px solid var(--success-bd);}
.legend-dot.med{background:var(--medium-bg);border:2px solid var(--medium-bd);}
.legend-dot.low{background:var(--low-bg);border:2px solid var(--low-bd);}
.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px;}
.stat-card{background:var(--white);border:1px solid var(--mist);border-radius:var(--r-md);padding:12px;text-align:center;}
.stat-num{font-family:var(--f-d);font-size:1.6rem;font-weight:700;line-height:1;margin-bottom:2px;}
.stat-num.green{color:var(--success);}
.stat-num.gold{color:var(--gold);}
.stat-num.blue{color:var(--moss);}
.stat-label{font-size:0.65rem;color:var(--muted);}
.cal-section{margin-bottom:22px;}
.cal-month-title{font-family:var(--f-d);font-size:0.95rem;color:var(--ink);margin-bottom:8px;display:flex;align-items:center;gap:8px;}
.cal-month-title::after{content:'';flex:1;height:1px;background:var(--mist);}
.cal-grid-header{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-bottom:3px;}
.cal-dow{text-align:center;font-size:0.6rem;font-weight:600;color:var(--muted);padding:3px 0;}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;}
.day-cell{border-radius:var(--r-sm);padding:5px 2px 7px;text-align:center;min-height:60px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:2px;border:1.5px solid transparent;transition:transform 0.15s,box-shadow 0.15s;position:relative;}
.day-cell.clickable{cursor:pointer;}
.day-cell.clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow);}
.day-cell.empty{background:transparent;border-color:transparent;}
.day-cell.past{background:#f9fafb;border-color:#f0f0f0;opacity:0.4;}
.day-cell.weekend-off{background:var(--low-bg);border-color:var(--low-bd);}
.day-cell.high{background:var(--success-bg);border-color:var(--success-bd);}
.day-cell.medium{background:var(--medium-bg);border-color:var(--medium-bd);}
.day-num{font-size:0.76rem;font-weight:600;color:var(--ink);line-height:1;}
.day-cell.past .day-num,.day-cell.weekend-off .day-num{color:var(--muted);}
.day-rate{font-size:0.78rem;font-weight:700;line-height:1;}
.day-cell.high .day-rate{color:var(--success);}
.day-cell.medium .day-rate{color:var(--medium);}
.day-cell.past .day-rate{color:var(--muted);font-size:0.6rem;}
.day-cell.weekend-off .day-rate{display:none;}
.day-label{font-size:0.5rem;font-weight:500;line-height:1;}
.day-cell.high .day-label{color:var(--success);}
.day-cell.medium .day-label{color:var(--medium);}
.day-cell.weekend-off .day-label{color:var(--muted);}
.hot-badge{position:absolute;top:2px;right:2px;background:var(--success);color:#fff;font-size:0.44rem;font-weight:700;padding:1px 3px;border-radius:8px;}
.sidebar{position:sticky;top:116px;}
.price-card{background:var(--forest);border-radius:var(--r-lg);padding:22px 20px;margin-bottom:12px;box-shadow:var(--shadow-lg);}
.price-label{font-size:0.65rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold-lt);margin-bottom:5px;}
.price-title{font-family:var(--f-d);font-size:1rem;color:var(--white);margin-bottom:12px;}
.price-amount{font-family:var(--f-d);font-size:2.4rem;font-weight:700;color:var(--gold-lt);line-height:1;margin-bottom:2px;}
.price-note{font-size:0.72rem;color:#a8d5bb;margin-bottom:14px;}
.price-includes{list-style:none;margin-bottom:16px;}
.price-includes li{display:flex;gap:7px;font-size:0.78rem;color:#d4eede;padding:6px 0;border-bottom:1px solid rgba(255,255,255,0.08);line-height:1.4;}
.price-includes li:last-child{border-bottom:none;}
.check{color:#4ade80;flex-shrink:0;}
.paypal-btn{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;background:var(--paypal);color:#fff;font-family:var(--f-b);font-size:0.88rem;font-weight:700;padding:12px;border-radius:var(--r-sm);text-decoration:none;border:none;cursor:pointer;transition:background 0.2s;margin-bottom:6px;}
.paypal-btn:hover{background:#1ebe5d;}
.wa-btn{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;background:#25D366;color:#fff;font-family:var(--f-b);font-size:0.88rem;font-weight:700;padding:12px;border-radius:var(--r-sm);border:none;cursor:pointer;transition:background 0.2s;margin-bottom:6px;}
.wa-btn:hover{background:#1ebe5d;}
.email-btn{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;background:var(--gold);color:#fff;font-family:var(--f-b);font-size:0.88rem;font-weight:700;padding:12px;border-radius:var(--r-sm);border:none;cursor:pointer;transition:background 0.2s;margin-bottom:6px;}
.email-btn:hover{background:var(--gold-lt);}
.sub-link{display:block;text-align:center;font-size:0.72rem;color:#a8d5bb;text-decoration:none;margin-top:2px;}
.sub-link:hover{color:var(--white);}
.bundle-card{background:var(--parch);border:1px solid var(--mist);border-radius:var(--r-md);padding:14px;}
.bundle-title{font-size:0.68rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;}
.bundle-desc{font-size:0.78rem;color:var(--mid);margin-bottom:8px;line-height:1.6;}
.bundle-price{font-family:var(--f-d);font-size:1.3rem;font-weight:700;color:var(--ink);margin-bottom:1px;}
.bundle-save{font-size:0.68rem;color:var(--success);font-weight:600;margin-bottom:10px;}
.bundle-btn,.bundle-wa-btn{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;color:#fff;font-family:var(--f-b);font-size:0.8rem;font-weight:700;padding:10px;border-radius:var(--r-sm);text-decoration:none;border:none;cursor:pointer;}
.bundle-btn{background:var(--paypal);}
.bundle-wa-btn{background:#25D366;}
.mobile-cta{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--forest);padding:10px 14px;z-index:80;box-shadow:0 -4px 20px rgba(0,0,0,0.2);}
.mobile-cta-inner{display:flex;gap:8px;max-width:600px;margin:0 auto;}
.mobile-main-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;color:#fff;font-family:var(--f-b);font-size:0.84rem;font-weight:700;padding:11px;border-radius:var(--r-sm);text-decoration:none;border:none;cursor:pointer;}
.mobile-price{font-size:0.65rem;color:#a8d5bb;text-align:center;margin-top:5px;}
.loading-wrap{text-align:center;padding:50px 0;color:var(--muted);}
.spinner{display:inline-block;width:26px;height:26px;border:3px solid var(--mist);border-top-color:var(--moss);border-radius:50%;animation:spin 0.8s linear infinite;margin-bottom:10px;}
@keyframes spin{to{transform:rotate(360deg);}}
.modal-bg{display:none;position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,0.6);backdrop-filter:blur(4px);align-items:center;justify-content:center;}
.modal-box{background:var(--white);border-radius:20px;padding:26px 22px;max-width:360px;width:94%;position:relative;box-shadow:0 20px 60px rgba(0,0,0,0.3);}
.modal-close{position:absolute;top:12px;right:14px;background:none;border:none;font-size:1.4rem;color:#999;cursor:pointer;}
.modal-tag{font-size:0.65rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);margin-bottom:6px;text-align:center;}
.modal-title{font-family:var(--f-d);font-size:1.1rem;color:var(--ink);margin-bottom:6px;text-align:center;}
.modal-sub{font-size:0.8rem;color:var(--muted);margin-bottom:16px;line-height:1.6;text-align:center;}
.modal-qr{width:min(180px,55vw);height:auto;border-radius:10px;margin:0 auto 12px;display:block;}
.modal-hint{font-size:0.72rem;color:var(--muted);text-align:center;}
.modal-footer{margin-top:12px;padding-top:12px;border-top:1px solid #f0f0f0;font-size:0.72rem;color:#aaa;text-align:center;}
.modal-footer a{color:var(--moss);font-weight:600;text-decoration:none;}
.form-group{margin-bottom:12px;}
.form-label{display:block;font-size:0.78rem;font-weight:600;color:var(--ink);margin-bottom:4px;}
.form-input,.form-select{width:100%;padding:10px 12px;border:1.5px solid var(--mist);border-radius:var(--r-sm);font-family:var(--f-b);font-size:0.85rem;color:var(--ink);background:var(--cream);outline:none;}
.form-input:focus,.form-select:focus{border-color:var(--moss);}
.form-submit{width:100%;background:var(--forest);color:#fff;font-family:var(--f-b);font-size:0.92rem;font-weight:700;padding:13px;border-radius:var(--r-sm);border:none;cursor:pointer;}
.form-success{display:none;text-align:center;padding:20px;background:var(--success-bg);border-radius:var(--r-md);color:var(--success);}
.lp-footer{background:var(--forest);padding:16px 20px;text-align:center;font-size:0.72rem;color:#6b9980;}
@media(max-width:800px){.page-layout{grid-template-columns:1fr;}.sidebar{display:none;}.mobile-cta{display:block;}body{padding-bottom:76px;}}
@media(max-width:600px){.main{padding:12px 10px 16px;}.stats-row{grid-template-columns:1fr 1fr;gap:6px;}.stats-row .stat-card:last-child{grid-column:1/-1;}.day-cell{min-height:50px;}.hero{padding:24px 14px 18px;}.city-tab{padding:10px 9px;font-size:0.76rem;}}
@media(max-width:380px){.city-tab-badge{display:none;}}
