@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#193b33;--muted:#65756e;--green:#247755;--green-dark:#15553c;--paper:#f7f8f3;--surface:#fffffc;--line:#e1e7dd;--mint:#eaf2df;--orange:#ba6038;--radius:14px;font-family:'Manrope','Noto Sans SC','PingFang SC',sans-serif;color:var(--ink);background:var(--paper);font-size:14px;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}a{color:inherit;text-decoration:none}button{color:inherit}a:hover{text-decoration:underline;text-underline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #e69d53;outline-offset:4px}input:focus,select:focus{outline:2px solid var(--green);outline-offset:2px}svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.topbar{height:86px;border-bottom:1px solid var(--line);background:var(--surface);display:flex;align-items:center;justify-content:space-between;padding:0 4%;gap:36px}.brand{display:flex;gap:11px;align-items:center;white-space:nowrap}.brand-mark{width:38px;height:38px;display:grid;place-items:center;background:var(--green);color:var(--surface);border-radius:50%}.brand-mark svg{width:25px;height:25px}.brand-name{font-size:21px;letter-spacing:-1px;font-weight:800}.brand small{display:block;font-size:10px;letter-spacing:2.1px;color:var(--muted);font-weight:600;margin-top:1px}.topnav{height:100%;display:flex;gap:36px;align-items:center;margin-right:auto;margin-left:48px}.topnav a{height:100%;display:flex;align-items:center;gap:8px;border-bottom:3px solid transparent;padding-top:3px;font-weight:600;color:var(--muted)}.topnav a.active{color:var(--green);border-color:var(--green)}.edition{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.dot{width:6px;height:6px;border-radius:50%;display:inline-block;background:var(--green)}.page{max-width:1480px;margin:auto;padding:36px 4% 22px}.intro{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:28px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.5px;color:var(--green);display:flex;align-items:center;gap:8px;margin-bottom:10px}.eyebrow span{padding:4px 8px;background:var(--mint);border-radius:4px;letter-spacing:0;font-size:11px}h1{font-size:clamp(25px,2.4vw,35px);font-weight:700;letter-spacing:-1.1px;margin:0 0 9px;line-height:1.4}.intro p{color:var(--muted);font-size:14px;margin:0;line-height:1.8}.data-stamp{display:flex;align-items:center;gap:12px;border-left:1px solid var(--line);padding-left:22px;min-width:172px}.data-stamp svg{color:var(--green);width:28px;height:28px}.data-stamp strong{display:block;font-size:13px;font-weight:600}.data-stamp small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.tripbar{display:flex;gap:0;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:17px 20px;margin-bottom:30px;box-shadow:0 4px 18px #2d432806}.trip-title{display:flex;align-items:center;gap:10px;padding-right:26px;font-weight:700}.trip-title svg{color:var(--green)}.date-field{display:flex;align-items:center;gap:14px;padding:0 22px;border-left:1px solid var(--line)}.date-field label{color:var(--muted);font-size:12px;white-space:nowrap}.date-field input{border:0;background:none;min-width:125px;color:var(--ink);font-size:14px;font-weight:600;padding:8px 0}.trip-arrow{color:#9aab9e}.btn{border:1px solid var(--line);background:transparent;border-radius:7px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:600;line-height:1.5;text-decoration:none!important}.btn:hover{background:#f0f4e9;border-color:#bccfbb}.btn-primary{background:var(--green);border-color:var(--green);color:var(--surface)}.btn-primary:hover{background:var(--green-dark);border-color:var(--green-dark)}.tripbar>.btn{margin-left:auto;white-space:nowrap;padding:11px 20px}.date-error{color:#a13e22;margin-top:-20px;min-height:0}.workspace{display:grid;grid-template-columns:177px minmax(0,1fr) 280px;gap:27px;align-items:start}.sidebar{padding-right:4px}.section-label{font-size:12px;color:var(--muted);display:flex;align-items:center;justify-content:space-between;margin:0 0 13px;letter-spacing:.3px;font-weight:500}.section-label small{background:#e9eee4;color:var(--muted);padding:2px 6px;border-radius:4px}.city-search{width:100%;border:1px solid var(--line);background:var(--surface);border-radius:7px;padding:10px 11px;margin-bottom:12px;font-size:13px}.city-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.city-btn{border:1px solid transparent;background:transparent;padding:9px 5px;border-radius:7px;font-size:14px;text-align:center;display:flex;align-items:center;justify-content:center;gap:5px}.city-btn:hover{background:#edf1e7}.city-btn.active{background:var(--mint);color:var(--green-dark);font-weight:700}.city-btn:first-child{grid-column:1/-1;justify-content:flex-start;padding-left:13px}.city-btn svg{width:16px}.filter-section{border-top:1px solid var(--line);padding-top:21px;margin-top:23px}.category-btn{display:flex;align-items:center;gap:11px;padding:10px 12px;background:none;border:0;width:100%;text-align:left;border-radius:7px;font-size:14px}.category-btn svg{width:17px;height:17px;color:#839086}.category-btn.active{color:var(--green-dark);background:var(--mint);font-weight:700}.category-btn.active svg{color:var(--green)}.category-btn:hover{background:#edf1e7}.audience{width:100%;padding:10px 7px;border:1px solid var(--line);border-radius:7px;background:var(--surface);font-size:13px;color:var(--ink)}.checkbox-label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;line-height:1.6;margin-top:13px}.checkbox-label input{accent-color:var(--green)}.results-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;height:29px}.results-head h2{font-size:18px;margin:0;font-weight:700}.results-head h2 span{font-size:12px;font-weight:500;color:var(--muted);margin-left:9px}.sort-select{font-size:12px;border:0;background:transparent;color:var(--muted);max-width:110px}.context-note{margin:0 0 15px;font-size:12px;color:var(--muted);line-height:1.7;display:flex;gap:6px}.context-note svg{width:15px;height:17px}.coupon{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-bottom:15px;transition:border-color .2s,transform .2s;animation:arrive .35s ease-out both}.coupon:hover{border-color:#b8cbb3;transform:translateY(-2px)}.coupon-main{display:flex;gap:18px;padding:20px 20px 18px}.coupon-value{width:96px;flex-shrink:0;align-self:stretch;min-height:112px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:var(--mint);border-radius:9px;position:relative;color:var(--green-dark);padding:12px 5px}.coupon-value:after{content:'';position:absolute;right:-1px;top:12px;bottom:12px;border-right:1px dashed #b9cdad}.coupon-value .currency{font-size:16px;align-self:flex-start;position:relative;left:17px;top:6px}.coupon-value strong{font-size:36px;letter-spacing:-2px;line-height:1.2;font-weight:800}.coupon-value small{font-size:11px;margin-top:8px;text-align:center}.coupon-value .unknown-value{font-size:21px;letter-spacing:1px}.coupon-body{min-width:0;flex:1}.coupon-top{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.tag{display:inline-flex;align-items:center;gap:4px;background:#f0f2e9;color:#5c6c55;border-radius:4px;font-size:11px;padding:3px 6px;line-height:1.3}.tag.open{background:#edf5e6;color:#397337}.tag.upcoming{background:#fff0df;color:#a36321}.tag.incomplete,.tag.ended{background:#f0efeb;color:#807768}.tag.verified{background:none;padding-left:0;color:#7a897e;margin-left:auto;font-size:10px}.tag.verified svg{width:13px;height:13px}.coupon h3{font-size:16px;line-height:1.5;margin:0 0 10px;font-weight:700;letter-spacing:-.25px}.coupon-meta{color:var(--muted);font-size:12px;line-height:1.85;display:flex;align-items:baseline;gap:7px}.coupon-meta .meta-label{color:#8a958c;min-width:26px}.coupon-footer{border-top:1px dashed var(--line);padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:8px}.release-note{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:6px;line-height:1.65}.release-note svg{width:14px;height:14px}.release-note time{color:var(--orange);font-weight:600}.coupon-actions{display:flex;gap:6px;flex-shrink:0}.coupon-actions .btn{font-size:12px;padding:7px 9px}.coupon-actions .btn svg{height:14px;width:14px}.detail-toggle{font-size:11px;color:var(--muted);background:none;border:0;padding:0}.coupon-details{padding:0 20px 15px;font-size:12px;line-height:1.9;color:var(--muted)}.coupon-details summary{padding:9px 0;cursor:pointer;color:var(--green);font-size:12px}.coupon-details ul{padding-left:18px;margin:7px 0}.coupon-details a{color:var(--green);text-decoration:underline;overflow-wrap:anywhere}.coupon-details .discount-list{display:flex;flex-wrap:wrap;gap:6px;margin:7px 0}.discount-chip{border:1px solid var(--line);padding:2px 7px;border-radius:4px}.empty{border:1px dashed #c5d3bd;border-radius:12px;padding:45px 24px;text-align:center;background:#f1f5ea}.empty svg{width:32px;height:32px;color:var(--green)}.empty h3{font-size:17px;margin:12px 0}.empty p{font-size:13px;line-height:1.8;color:var(--muted)}.empty .btn{margin-top:8px}.right-rail{position:sticky;top:20px}.planner{border:1px solid #d8e3cc;background:#edf3e3;border-radius:var(--radius);padding:22px}.rail-eyebrow{font-size:10px;color:#788469;letter-spacing:1.8px;font-weight:600}.planner-heading{display:flex;align-items:center;justify-content:space-between;margin:8px 0 5px}.planner h2{font-size:18px;margin:0}.planner-heading svg{width:21px;height:21px;color:var(--green)}.planner>p{font-size:12px;color:#718066;line-height:1.8;margin:6px 0 19px}.budget-field{display:flex;align-items:center;gap:6px;margin:10px 0;font-size:12px}.budget-field label{flex:1}.budget-field .budget-input{display:flex;align-items:center;background:#fffffa;border:1px solid #dce5d2;border-radius:6px;padding:7px 9px;gap:4px;width:103px;color:#7d8875}.budget-field input{border:0;background:none;width:100%;min-width:0;text-align:right;color:var(--ink);font-size:13px;padding:0}.estimate{border-top:1px dashed #becfab;margin-top:18px;padding-top:18px}.estimate-label{font-size:12px;color:#68775c}.estimate-total{font-size:47px;letter-spacing:-2px;line-height:1.4;font-weight:800;color:var(--green-dark)}.estimate-total small{font-size:22px;margin-right:4px;font-weight:500}.estimate-caption{font-size:11px;line-height:1.8;color:#6c7b60;margin:2px 0 0}.estimate-picks{padding:0;list-style:none;line-height:1.8;font-size:11px;color:#5f7559}.estimate-picks li{display:flex;gap:8px;justify-content:space-between;margin:5px 0}.estimate-picks a{max-width:165px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planner .btn{width:100%;font-size:12px;margin-top:15px;background:#fcfdf6;border-color:#cbd9bd}.coming{padding:23px 4px 0}.coming h3{font-size:14px;margin:0 0 19px}.timeline{border-left:1px solid #d6dfce;padding-left:16px;margin-left:4px}.timeline-item{position:relative;padding-bottom:20px}.timeline-item:before{content:'';position:absolute;left:-20px;top:6px;width:7px;height:7px;border:2px solid var(--paper);background:#7e9b62;border-radius:50%;box-sizing:content-box}.timeline-item time{font-size:11px;color:var(--orange);font-weight:600}.timeline-item a{display:block;font-size:12px;line-height:1.6;margin:5px 0}.timeline-item small{color:var(--muted);font-size:11px}.reminder-callout{font-size:12px;line-height:1.8;padding:14px;background:var(--mint);border-radius:8px;margin-bottom:18px}.footer{display:flex;justify-content:space-between;gap:20px;margin-top:36px;padding:22px 0 4px;border-top:1px solid var(--line);font-size:11px;color:#7d887f;line-height:1.8}.footer a{color:var(--green)}.method{margin-top:20px;max-width:760px;font-size:13px;line-height:1.9;color:var(--muted)}.method summary{cursor:pointer;color:var(--green)}.method p{margin:14px 0}.city-directory{display:flex;flex-wrap:wrap;gap:10px 20px;margin:15px 0;color:var(--green)}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fffff6;padding:14px 22px;box-shadow:0 8px 30px #193b3320;border-radius:9px;z-index:10;max-width:90vw;font-size:13px;line-height:1.6}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}@keyframes arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1600px){.workspace{grid-template-columns:195px minmax(0,1fr) 295px;gap:34px}.coupon-main{padding:24px;gap:24px}.coupon-value{width:110px}}
@media(max-width:1150px){.workspace{grid-template-columns:155px minmax(0,1fr) 245px;gap:18px}.page{padding-left:3%;padding-right:3%}.coupon-main{padding:16px;gap:12px}.coupon-value{width:78px}.coupon-value strong{font-size:32px}.coupon-value .currency{left:10px}.coupon-footer{padding:10px 15px;flex-wrap:wrap}.coupon-actions{margin-left:auto}.planner{padding:18px}.topnav{margin-left:18px;gap:24px}.date-field{padding:0 14px}.trip-title{padding-right:16px}.data-stamp{display:none}}
@media(max-width:960px){.workspace{grid-template-columns:150px minmax(0,1fr)}.right-rail{position:static;grid-column:2}.planner{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.planner .rail-eyebrow,.planner .planner-heading,.planner>p{grid-column:1/-1}.planner>p{margin-bottom:8px}.estimate{grid-column:2;grid-row:4/span 4;margin-top:0;padding-top:7px;border-top:0;border-left:1px dashed #becfab;padding-left:20px}.planner .btn{grid-column:1/-1}.coming{display:none}.tripbar{flex-wrap:wrap;gap:12px}.trip-title{display:none}.date-field{padding-left:0;border:0;flex:1;justify-content:space-between}.tripbar>.btn{margin-left:0}.edition{display:none}.footer{font-size:11px}.topnav{margin-left:auto;margin-right:0}}
@media(max-width:640px){.topbar{height:73px;padding:0 5%;gap:12px}.brand-name{font-size:18px}.brand small{font-size:8px;letter-spacing:1.3px}.brand-mark{width:32px;height:32px}.topnav{gap:20px}.topnav a{font-size:12px;gap:5px}.topnav a svg{display:none}.page{padding:25px 5% 20px}.intro{margin-bottom:21px}.intro h1{font-size:26px;letter-spacing:-.7px}.intro p{font-size:12px}.eyebrow{font-size:11px;margin-bottom:11px}.tripbar{padding:13px 14px;gap:10px;margin-bottom:22px}.date-field{flex:1;display:block;padding-right:0}.date-field label{display:block;font-size:10px}.date-field input{font-size:12px;min-width:100px;width:100%;padding:5px 0}.trip-arrow{display:none}.tripbar>.btn{font-size:12px;padding:9px 12px}.tripbar>.btn svg{display:none}.workspace{display:flex;flex-direction:column;gap:0}.sidebar{width:100%;padding:0}.sidebar>.section-label{display:none}.city-search{display:none}.city-grid{display:flex;overflow-x:auto;gap:6px;padding-bottom:10px;scrollbar-width:thin}.city-btn{white-space:nowrap;font-size:12px;padding:8px 12px;background:#eff2e8}.city-btn:first-child{padding-left:12px}.city-btn.active{background:var(--green);color:var(--surface)}.filter-section{padding-top:0;margin-top:10px;border:0}.filter-section .section-label{display:none}.category-list{display:flex;overflow-x:auto;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.category-btn{width:auto;white-space:nowrap;font-size:12px;padding:7px 0;border-radius:0;gap:5px}.category-btn svg{width:14px;height:14px}.category-btn.active{background:none;color:var(--green);box-shadow:0 2px var(--green)}.audience-section{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:12px 0 21px}.audience{font-size:11px;width:150px;padding:7px}.checkbox-label{margin:0;font-size:11px}.results{width:100%}.results-head{margin-bottom:11px}.results-head h2{font-size:17px}.results-head h2 span{font-size:11px;margin-left:5px}.sort-select{font-size:11px}.context-note{font-size:11px}.coupon-main{padding:15px;gap:14px}.coupon-value{width:79px;min-height:113px}.coupon h3{font-size:14px;margin-bottom:8px}.coupon-meta{font-size:11px}.tag{font-size:10px}.tag.verified{display:none}.coupon-footer{gap:10px;padding:11px 14px}.release-note{font-size:10px}.coupon-actions .btn{font-size:11px;padding:7px 8px}.coupon-details{padding:0 15px 11px}.right-rail{width:100%;margin-top:15px}.planner{column-gap:12px}.planner h2{font-size:17px}.estimate{padding-left:15px}.estimate-total{font-size:38px}.budget-field{font-size:11px}.budget-field .budget-input{width:78px}.footer{margin-top:27px;display:block;font-size:10px}.footer>div+div{margin-top:8px}.toast{width:max-content;max-width:90%;font-size:12px;padding:12px 16px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Seven-day trial: keep the main actions and conditional savings visible. */
.mobile-filter-toggle{display:none}
@media(min-width:641px){.city-grid{max-height:340px;overflow-y:auto;scrollbar-width:thin}}
.quick-estimate{background:#fff8f3;border:1px solid #eed6c3;border-radius:12px;padding:12px 15px;margin:0 0 13px}
.quick-estimate>label{display:block;color:#884b31;font-size:12px;font-weight:700;margin-bottom:8px}
.quick-estimate-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.quick-estimate select,.quick-budget-wrap{border:1px solid #ead3c2;border-radius:7px;background:#fff;min-height:38px;padding:7px 9px}
.quick-estimate select{max-width:130px;color:var(--ink)}
.quick-budget-wrap{display:flex;align-items:center;color:#8d6853;gap:4px;width:118px}
.quick-budget-wrap input{border:0;background:transparent;width:100%;min-width:0;outline:none;color:var(--ink)}
.quick-estimate strong{color:#b74124;font-size:19px;letter-spacing:-.4px}
.quick-estimate small{display:block;color:#896b5d;line-height:1.5;margin-top:7px;font-size:10px}
.coupon-actions .btn-primary{border-radius:999px;padding-left:15px;padding-right:15px;box-shadow:0 2px 7px #24775523}
.coupon-actions .btn-remind{border-color:#b8cfad;color:var(--green-dark);background:#f5faef;border-radius:999px}
.coupon-actions .btn-remind:hover{background:var(--mint)}
.coupon-actions .btn-subdued{border-radius:999px;background:#f2f3ef;color:#58675d;border-color:#dce2d9}
.coupon.is-muted{background:#fafbf8;border-color:#e4e8e1}
.coupon.is-muted .coupon-value{background:#eef0eb;color:#647366}
.coupon.is-muted .coupon-value:after{border-color:#cbd4c8}
.coupon.is-muted h3{color:#596d61}
.critical-rule{display:inline;color:#a33421;background:#fff0e9;border-radius:3px;padding:2px 4px;font-weight:700;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.empty-suggestions{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:18px;color:var(--muted);font-size:12px}
.empty-suggestions .btn{margin:0;padding:6px 11px;background:var(--surface);color:var(--green)}
@media(max-width:640px){
 .page{padding-top:17px}
 .intro{margin-bottom:15px}
 .intro h1{font-size:23px;margin-bottom:4px}
 .eyebrow{margin-bottom:6px}
 .tripbar{margin-bottom:13px}
 .workspace{overflow:visible}
 .sidebar{position:sticky;top:0;z-index:5;background:var(--paper);padding:7px 0 8px;box-shadow:0 5px 10px #f7f8f3ed}
 .city-grid{padding-bottom:6px}
 .city-btn{min-height:35px}
 .mobile-filter-toggle{display:flex;align-items:center;gap:7px;width:100%;min-height:37px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:7px 11px;font-size:12px;font-weight:700;color:var(--green-dark);text-align:left}
 .mobile-filter-toggle svg{width:15px;height:15px}
 .mobile-filter-toggle span:last-child{margin-left:auto}
 .filter-panel{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface);border:1px solid var(--line);border-radius:0 0 12px 12px;box-shadow:0 10px 20px #193b3320;padding:8px 13px 15px;max-height:min(65vh,430px);overflow-y:auto}
 .filter-panel.is-open{display:block}
 .filter-section{margin-top:3px}
 .filter-section .section-label{display:block;margin:4px 0 9px}
 .category-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;border:0;overflow:visible;padding:0}
 .category-btn{padding:9px 6px;border-radius:7px;box-shadow:none!important;min-height:39px}
 .category-btn.active{background:var(--mint)}
 .audience-section{display:block;margin:12px 0 0}
 .audience{width:100%;font-size:12px;padding:10px}
 .checkbox-label{margin-top:10px}
 .results-head{margin-top:10px}
 .quick-estimate{padding:10px 11px;margin-bottom:11px}
 .quick-estimate>label{margin-bottom:6px}
 .quick-estimate-controls{gap:7px}
 .quick-estimate select{max-width:110px;font-size:12px}
 .quick-budget-wrap{width:95px;font-size:12px}
 .quick-estimate strong{font-size:15px;flex:1;min-width:105px}
 .quick-estimate small{font-size:10px}
 .coupon-footer{align-items:stretch}
 .coupon-actions{width:100%;margin-left:0}
 .coupon-actions .btn{min-height:42px;flex:1;font-size:12px;white-space:nowrap}
 .coupon-actions .btn-primary{flex:1.15}
}
