:root{--navy:#111c66;--navy2:#223182;--yellow:#ffda36;--ink:#172257;--muted:#7d86a6;--paper:#f1f2f7;--line:#e2e5ef}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}.layout{height:100dvh;max-width:1700px;margin:auto;padding:16px 32px;display:flex;flex-direction:column;gap:0;overflow:hidden}header{display:flex;align-items:center;gap:14px;min-height:58px}.logo{width:48px;height:48px;background:var(--navy);display:grid;place-items:center;color:var(--yellow);font-size:13px;font-weight:900}.identity b{display:block;letter-spacing:.14em;font-size:15px}.identity span{display:block;letter-spacing:.1em;color:var(--muted);font-size:10px;margin-top:5px}.right{margin-left:auto;display:flex;align-items:center;gap:22px}a{color:inherit;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.05em}.download{background:var(--yellow);padding:12px 15px;color:var(--navy)}nav{display:flex;gap:5px;border-bottom:1px solid #dce0eb;flex-shrink:0;margin:5px 0 0;overflow:auto}button{font:inherit;cursor:pointer}.tab{padding:14px 18px 12px;background:transparent;color:#8089a8;font-size:11px;font-weight:800;letter-spacing:.07em;border:0;border-bottom:3px solid transparent;white-space:nowrap}.tab.active{color:var(--navy);border-bottom-color:var(--yellow)}main{flex:1;min-height:0;display:flex}.panel{display:none;flex:1;min-height:0;flex-direction:column}.panel.active{display:flex}.section-title{display:flex;align-items:flex-end;justify-content:space-between;margin:15px 0 12px}.section-title h1{font-size:clamp(20px,2.3vw,29px);margin:4px 0 0;letter-spacing:-.02em}.eyebrow,.subtle{font-size:10px;letter-spacing:.13em;color:#8891ad;font-weight:700}.subtle{text-align:right}.market-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;flex:1;min-height:150px;max-height:265px}.market-card{padding:18px 22px;display:flex;flex-direction:column;justify-content:space-between}.core{background:var(--navy);color:#fff}.expanded{background:var(--yellow);color:var(--navy)}.card-top,.card-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px;letter-spacing:.09em;font-weight:800}.card-top span+span{font-size:9px;opacity:.74}.card-content{display:grid;grid-template-columns:1fr 1.3fr;gap:20px}.small{font-size:10px;font-weight:700;letter-spacing:.05em;opacity:.75}.metric{font-size:clamp(28px,3.3vw,48px);font-weight:800;letter-spacing:-.04em;margin-top:5px}.metric span{font-size:13px;letter-spacing:0;margin-left:6px;font-weight:500}.card-foot button{background:transparent;color:inherit;border:1px solid currentColor;padding:8px 10px;font-size:10px;font-weight:800;letter-spacing:.05em}.bottom-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:14px;margin-top:12px}.box{background:#fff;border:1px solid var(--line);padding:13px 17px;min-width:0}.box-title,.ordinal,.year-grid article>span,.support-grid article>span{font-size:10px;letter-spacing:.1em;font-weight:800;color:#7380a6}.assumptions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:9px 0}.assumptions b{display:block;color:var(--navy);font-size:19px}.assumptions span{display:block;color:#7c86a1;font-size:10px;margin-top:3px}.case-line,.disclaimer,.footnote{color:#8790a9;font-size:10px;line-height:1.45}.estimate p{font-size:11px;color:#647090;margin:7px 0}.estimate-line{font-size:11px;color:#293773}.disclaimer{margin-top:6px}.footnote{padding-top:8px}.q4grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;flex:1;min-height:0}.qcard,.year-grid article,.support-grid article{background:#fff;border:1px solid var(--line);padding:17px;min-width:0}.qcard{border-top:4px solid var(--navy);display:flex;flex-direction:column}.qcard:nth-child(2n){border-top-color:var(--yellow)}h2{font-size:17px;line-height:1.2;margin:12px 0 8px}p{font-size:12px;line-height:1.5;color:#5f6c8d;margin:0}.chips{display:flex;flex-direction:column;gap:6px;margin:12px 0}.chips span{font-size:11px;background:#f4f5fa;padding:7px 8px}.chips b{color:#16246c}.action{margin-top:auto;font-size:11px;color:#7884a1}.budget{margin-top:12px;background:var(--navy);color:white;padding:14px 18px;display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:14px}.budget span{display:block;color:#bbc4e3;font-size:9px;font-weight:700;letter-spacing:.07em}.budget b{display:block;margin-top:6px;color:var(--yellow);font-size:18px}.budget small{font-size:10px}.year-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:12px;flex:1;min-height:0}.year-grid article{display:flex;flex-direction:column;border-top:3px solid var(--yellow)}.year-grid article b{font-size:11px;color:var(--navy);margin-top:auto}.support-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;flex:1;max-height:260px}.support-grid article{border-top:3px solid var(--yellow)}.directory{background:#fff;border:1px solid var(--line);padding:14px 16px;display:flex;flex-direction:column;flex:1;min-height:0}.directory-controls{display:flex;gap:8px;align-items:center;margin-bottom:9px}.directory-controls button{border:1px solid #dce1ef;background:#fff;color:#64708f;font-weight:800;font-size:10px;padding:9px 12px}.directory-controls button.active{background:var(--navy);color:#fff;border-color:var(--navy)}select,input{font:inherit;border:1px solid #dce1ef;background:#fff;color:#293773;padding:8px 10px;font-size:11px;min-width:130px}input{flex:1}#restaurant-count{font-size:11px;white-space:nowrap;color:#7d86a6}.table-wrap{flex:1;min-height:0;overflow:hidden}table{width:100%;border-collapse:collapse;table-layout:fixed}th{text-align:left;color:#8a94ae;font-size:9px;letter-spacing:.06em;padding:8px 7px;border-bottom:1px solid #e7e9f1}td{font-size:11px;padding:8px 7px;border-bottom:1px solid #edf0f6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}td small{display:block;color:#969db0;font-size:9px;margin-top:2px}th:nth-child(1){width:11%}th:nth-child(2){width:27%}th:nth-child(3){width:9%}th:nth-child(4){width:35%}th:nth-child(5){width:18%}.pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:#8b93aa;padding-top:8px}.pagination button{background:#f2f3f8;border:0;padding:6px 12px;margin:0 8px;color:var(--navy)}footer{flex-shrink:0;display:flex;justify-content:space-between;color:#a1a8bb;font-size:9px;letter-spacing:.1em;padding-top:10px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #7a8ed0;outline-offset:2px}@media(max-height:800px){.layout{padding-top:8px;padding-bottom:8px}.section-title{margin:8px 0}.market-cards{max-height:210px}.market-card{padding:13px 17px}.metric{font-size:32px}.qcard{padding:12px}.qcard p{font-size:11px}h2{font-size:15px;margin:8px 0 6px}.budget{padding:9px 14px}td{padding:5px 7px}footer{padding-top:5px}}@media(max-width:900px){.layout{height:auto;min-height:100dvh;overflow:auto;padding:12px 16px}.market-cards,.bottom-grid{grid-template-columns:1fr}.q4grid,.year-grid,.support-grid{grid-template-columns:1fr 1fr}.market-cards{max-height:none}.market-card{min-height:180px}.right a:first-child,.subtle{display:none}.tab{padding:12px 10px}.directory{min-height:500px}.table-wrap{overflow:auto}.table-wrap table{min-width:800px}}@media(max-width:520px){.identity span{font-size:8px}.download{font-size:9px;padding:9px}.q4grid,.year-grid,.support-grid{grid-template-columns:1fr}.directory-controls{flex-wrap:wrap}}

/* Keep each view inside the available workspace frame. */
html,body{height:100%;overflow:hidden}.layout{height:100dvh;min-height:0;overflow:hidden}.panel{overflow:hidden}.section-title{flex-shrink:0}.directory{overflow:hidden}.market-cards{flex:1 1 36%;min-height:0;max-height:none}.bottom-grid{flex:0 1 auto;min-height:0}.year-grid,.support-grid,.q4grid{overflow:hidden}.year-grid article,.support-grid article,.qcard{min-height:0;overflow:hidden}.table-wrap{overflow:hidden}.footnote{flex-shrink:0}
@media(max-width:900px){.layout{height:100dvh;min-height:0;overflow:hidden;padding:8px 12px}.market-cards{grid-template-columns:1fr 1fr;max-height:none;min-height:0}.market-card{min-height:0}.bottom-grid{grid-template-columns:1fr 1fr}.q4grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.year-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.support-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));max-height:none}.directory{min-height:0}.table-wrap{overflow:hidden}.table-wrap table{min-width:0}.section-title h1{font-size:clamp(17px,3vw,23px)}.metric{font-size:clamp(20px,4vw,32px)}.card-content{gap:6px}.card-top span+span{display:none}.qcard,.year-grid article,.support-grid article{padding:10px}.budget{padding:8px;gap:6px}.budget b{font-size:clamp(11px,1.8vw,17px)}.budget span{font-size:8px}.chips{gap:3px;margin:5px 0}.chips span{padding:4px;font-size:9px}p{font-size:10px}.action{font-size:9px}.box{padding:9px}.assumptions{gap:3px;margin:5px 0}.assumptions b{font-size:15px}.assumptions span,.case-line,.disclaimer,.footnote{font-size:9px}.tab{padding:9px 6px;flex:1;text-align:center;font-size:clamp(7px,1.2vw,10px)}nav{overflow:hidden}.directory-controls{gap:4px;flex-wrap:nowrap}.directory-controls button{padding:7px 5px;font-size:9px}select,input{min-width:0;padding:6px;font-size:10px}.pagination>span{font-size:9px}}
@media(max-width:520px){.layout{height:100dvh;min-height:0;overflow:hidden}.logo{width:34px;height:34px;font-size:10px}.identity b{font-size:11px}.identity span{font-size:7px}.download{font-size:7px;padding:7px}.section-title{margin:6px 0}.section-title h1{font-size:17px}.market-cards{grid-template-columns:1fr 1fr;gap:6px}.market-card{padding:8px}.card-top,.card-foot{font-size:8px}.small{font-size:8px}.metric{font-size:19px}.metric span{font-size:8px;margin-left:2px}.card-foot button{font-size:7px;padding:5px}.bottom-grid{gap:6px;margin-top:6px}.assumptions{grid-template-columns:1fr 1fr 1fr}.assumptions b{font-size:12px}.assumptions span,.case-line,.disclaimer,.footnote{font-size:8px}.estimate p,.estimate-line{font-size:9px}.q4grid,.year-grid,.support-grid{gap:5px}.year-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr))}.qcard,.year-grid article,.support-grid article{padding:7px}h2{font-size:12px;margin:5px 0}.ordinal,.year-grid article>span,.support-grid article>span{font-size:8px}p{font-size:9px;line-height:1.3}.budget span{font-size:7px}.budget b{font-size:10px}.directory-controls{flex-wrap:wrap}.directory-controls input{flex:1;min-width:90px}.directory-controls select{width:95px}.table-wrap table{min-width:0}.restaurant-table th:nth-child(4),.restaurant-table td:nth-child(4),.restaurant-table th:nth-child(5),.restaurant-table td:nth-child(5){display:none}#restaurants th:nth-child(4),#restaurants td:nth-child(4),#restaurants th:nth-child(5),#restaurants td:nth-child(5){display:none}#restaurants th:nth-child(1){width:25%}#restaurants th:nth-child(2){width:55%}#restaurants th:nth-child(3){width:20%}.pagination>span{max-width:55%;font-size:8px}footer{font-size:8px}}

.directory-controls .view-mode{border-color:#cfd6ea;color:#4c5d8e}.directory-controls .view-mode.active{background:#ffda36;color:#111c66;border-color:#ffda36}#download-locations{white-space:nowrap}.metric{font-size:clamp(22px,2.6vw,40px)}.metric span{font-size:12px;display:inline-block}.directory-controls input{min-width:70px}@media(max-width:900px){#download-locations{font-size:8px;padding:6px}.directory-controls{flex-wrap:wrap}.metric{font-size:clamp(15px,2.4vw,28px)}.metric span{font-size:9px}}

/* Clear typography throughout the CTS plan. */
body,button,input,select{font-family:Arial,"Helvetica Neue",Helvetica,"Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased;letter-spacing:normal}.identity b,.identity span,a,.tab,.eyebrow,.subtle,.card-top,.card-foot,.small,.box-title,.ordinal,.year-grid article>span,.support-grid article>span,.budget span,th,footer{letter-spacing:normal}.identity b{font-weight:700;font-size:15px}.tab{font-size:12px;font-weight:600}.card-top,.card-foot,.box-title,.ordinal,.year-grid article>span,.support-grid article>span,.small,th{font-weight:600}.metric{font-weight:700;letter-spacing:normal}.card-foot button,.directory-controls button{font-weight:600;letter-spacing:normal}.section-title h1{font-weight:600;letter-spacing:normal}.qcard h2,.year-grid h2,.support-grid h2{font-weight:600}.box-title,.ordinal,.year-grid article>span,.support-grid article>span{color:#536486}.eyebrow,.subtle{color:#64728f}.footnote,.case-line,.disclaimer{color:#5e6b87}.identity span{color:#596785}.directory-controls button{color:#46577c}p{color:#485879}.action{color:#566585}td{color:#26375f}td small{color:#5d6c88}footer{color:#687795}@media(max-width:900px){.tab{font-size:clamp(9px,1.25vw,12px)}.identity span{font-size:9px}}@media(max-width:520px){.tab{font-size:8px}.card-top,.card-foot,.small{font-size:9px}.footnote,.case-line,.disclaimer{font-size:9px}}

/* Market comparison: compact, aligned and easy to read. */
.market-cards{flex:0 0 clamp(174px,25vh,230px);max-height:230px;gap:16px}.market-card{display:grid;grid-template-rows:auto 1fr auto;gap:16px;padding:20px 24px;border:1px solid #dde2ed;border-top:4px solid #172361;background:#fff;color:#172361}.market-card.expanded{border-top-color:#f3c900;background:#fffdf2}.card-top{font-size:10px;letter-spacing:normal;color:#667496;align-items:center}.card-top span+span{font-size:10px;opacity:1;font-weight:400;text-align:right}.city-tag{font-size:14px!important;font-weight:700;color:#172361;letter-spacing:0}.core .city-tag:before,.expanded .city-tag:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#172361;margin-right:8px;vertical-align:2px}.expanded .city-tag:before{background:#e7b800}.card-content{display:grid;grid-template-columns:0.9fr 1.4fr;gap:16px;align-items:center}.card-content>div+div{border-left:1px solid #e5e8ef;padding-left:20px}.small{font-size:10px;color:#697798;opacity:1;font-weight:600}.metric{font-size:clamp(23px,2.2vw,34px);line-height:1.1;color:#152260;font-weight:700;margin-top:8px;white-space:nowrap}.metric span{font-size:11px;color:#6c7999;font-weight:400;letter-spacing:0}.card-foot{font-size:11px;color:#697798;font-weight:500;letter-spacing:0}.card-foot button{font-size:10px;font-weight:600;color:#172361;border:1px solid #c9d1e2;background:#fff;padding:8px 11px}.card-foot button:hover{background:#f5f7fc;border-color:#172361}.bottom-grid{margin-top:16px}.box{padding:17px 20px}.assumptions{margin:14px 0}.footnote{padding-top:12px}@media(max-width:900px){.market-cards{flex:0 0 clamp(145px,24vh,200px);gap:8px}.market-card{padding:12px;gap:8px}.city-tag{font-size:12px!important}.card-content{gap:6px}.card-content>div+div{padding-left:8px}.metric{font-size:clamp(16px,2.8vw,27px)}.metric span{font-size:9px}.box{padding:11px}.bottom-grid{margin-top:8px}.assumptions{margin:7px 0}}@media(max-width:520px){.market-cards{flex:0 0 clamp(130px,23vh,175px)}.market-card{padding:8px;gap:5px}.city-tag{font-size:10px!important}.card-content{grid-template-columns:1fr;gap:5px}.card-content>div+div{border:0;padding:0}.small{font-size:8px}.metric{font-size:17px;margin-top:2px}.card-foot{font-size:8px}.card-foot button{font-size:7px;padding:5px}.assumptions{margin:5px 0}}

/* Directory: more entries per screen and unmistakable paging. */
#restaurants table,#restaurants tbody{display:block;width:100%}#restaurants thead{display:none}#restaurants tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 14px;align-content:start}#restaurants tbody tr:not([hidden]){display:grid;grid-template-columns:90px minmax(0,1fr) 50px;align-items:center;min-height:33px;border-bottom:1px solid #e7eaf2}#restaurants tbody tr[hidden]{display:none!important}#restaurants tbody td{border:0;padding:6px;font-size:12px}#restaurants tbody td:nth-child(1){font-size:10px;color:#667494}#restaurants tbody td:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#restaurants tbody td:nth-child(3){text-align:right;color:#77829c;font-size:10px}#restaurants tbody td:nth-child(4),#restaurants tbody td:nth-child(5){display:none}.pagination{font-size:11px;color:#687693}.pagination button{font-size:11px;padding:8px 14px;background:#e8ebf6;font-weight:600}.pagination button:disabled{opacity:.35}#pages{display:inline-block;min-width:80px;text-align:center;font-weight:600;color:#172257}#restaurant-count{font-weight:700;color:#172257}.directory-controls .group,.directory-controls .view-mode{font-size:11px;padding:9px 12px}@media(max-width:800px){#restaurants tbody{grid-template-columns:1fr}#restaurants tbody tr:not([hidden]){grid-template-columns:70px minmax(0,1fr) 40px}#restaurants tbody td{font-size:10px}.pagination button{font-size:10px;padding:6px}}

/* Q4 workstreams in compact rows. */
@media(min-width:901px){.q4grid{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(4,minmax(0,1fr));gap:8px}.qcard{display:grid;grid-template-columns:minmax(155px,1.05fr) minmax(220px,2fr) minmax(160px,1.35fr) minmax(180px,1.3fr);grid-template-rows:auto auto;column-gap:22px;align-content:center;align-items:center;padding:12px 18px;border-top:1px solid #e2e5ef;border-left:4px solid #172361}.qcard:nth-child(2n){border-top:1px solid #e2e5ef;border-left-color:#f3c900}.qcard .ordinal{grid-column:1;grid-row:1}.qcard h2{grid-column:1;grid-row:2;margin:5px 0 0;font-size:16px}.qcard>p:not(.action){grid-column:2;grid-row:1 / 3;margin:0;font-size:12px}.qcard .chips{grid-column:3;grid-row:1 / 3;margin:0;gap:5px}.qcard .action{grid-column:4;grid-row:1 / 3;margin:0;font-size:11px}.budget{margin-top:8px;padding:12px 18px}.budget b{font-size:17px}}

#restaurants tbody tr:not([hidden]){min-height:42px}#restaurants tbody td{padding:5px 7px}#restaurants tbody td:nth-child(2) strong,#restaurants tbody td:nth-child(2) small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#restaurants tbody td:nth-child(2) small{margin-top:4px;font-size:10px;color:#667494}.pagination>span{max-width:68%;line-height:1.3}
/* More breathing room in the masthead and five-column annual plan. */
header{min-height:84px;gap:18px}.logo{width:64px;height:64px;font-size:17px}.identity b{font-size:20px}.identity span{font-size:11px;margin-top:7px}nav{margin-top:8px}#market .section-title{margin-top:22px;margin-bottom:18px}#market .market-cards{flex-basis:clamp(190px,26vh,255px);max-height:255px}#market .bottom-grid{margin-top:clamp(20px,3vh,32px)}#market .footnote{padding-top:14px}.year-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:minmax(0,1fr);gap:12px;flex:1;min-height:0}.year-grid article{display:flex;flex-direction:column;align-items:flex-start;padding:22px 18px;background:#fff;border:1px solid #e2e5ef;border-top:4px solid #ffda36;overflow:hidden}.year-grid article:nth-child(odd){border-top-color:#172361}.year-grid h2{font-size:17px;line-height:1.3;margin:14px 0 20px}.year-grid ul{margin:0;padding:0;list-style:none;width:100%}.year-grid li{position:relative;padding:0 0 0 15px;margin:0 0 13px;color:#485879;font-size:13px;line-height:1.45}.year-grid li:before{content:"•";position:absolute;left:0;color:#d6aa00;font-weight:bold}.year-grid article b{margin-top:auto;font-size:11px;line-height:1.5}.table-wrap{overflow:hidden}#restaurants tbody tr:not([hidden]){min-height:42px}#restaurants tbody td{padding:5px 7px}#restaurants tbody td:nth-child(2) strong,#restaurants tbody td:nth-child(2) small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#restaurants tbody td:nth-child(2) small{margin-top:4px;font-size:10px;color:#667494}.pagination>span{max-width:68%;line-height:1.3}@media(max-width:900px){header{min-height:66px}.logo{width:48px;height:48px;font-size:13px}.identity b{font-size:16px}#market .section-title{margin-top:12px;margin-bottom:10px}#market .market-cards{flex-basis:clamp(150px,24vh,200px)}#market .bottom-grid{margin-top:12px}.year-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.year-grid article{padding:12px}.year-grid h2{font-size:13px;margin:6px 0 8px}.year-grid li{font-size:10px;margin-bottom:5px;line-height:1.3;padding-left:12px}}@media(max-width:520px){header{min-height:50px}.logo{width:38px;height:38px;font-size:10px}.identity b{font-size:12px}.year-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:5px}.year-grid article{padding:6px}.year-grid h2{font-size:11px;margin:4px 0}.year-grid li{font-size:8px;margin-bottom:3px}.year-grid article b{font-size:9px}#restaurants tbody tr:not([hidden]){min-height:42px}}

/* Q4: combined monthly fee is shown with the work it covers. */
#q4 .q4grid{grid-template-rows:repeat(3,minmax(0,1fr))}#q4 .qcard{border-left:4px solid #172361}#q4 .qcard:nth-child(2){border-left-color:#f3c900}#q4 .budget-tag{grid-column:4;grid-row:1 / 3;justify-self:start;padding:9px 12px;background:#fff4b8;color:#172361;font-size:12px;white-space:nowrap}#q4 .budget-tag strong{font-size:16px}#q4 .budget-tag small{font-size:10px}#q4 .budget-tag.pending{background:#eef0f6;color:#65718c;font-size:11px}@media(max-width:900px){#q4 .q4grid{grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(0,1fr))}#q4 .qcard{display:flex;flex-direction:column;align-items:flex-start}#q4 .budget-tag{margin-top:auto;padding:5px 8px}}

/* CTS Q4 plan visual system: navy, yellow and editorial spacing. */
body{background:#f8f8f6;color:#162362;font-family:Arial,Helvetica,"Microsoft YaHei",sans-serif}.layout{background:#f8f8f6;border-top:7px solid #f5ca2f;padding-top:12px}.logo{background:#111d66;color:#ffdb38}.identity b{color:#172b75;font-weight:700}.identity span{color:#64708e}.download{background:#ffda36;color:#142264}.tab{font-family:Arial,Helvetica,sans-serif;font-weight:600;color:#7a859f}.tab.active{background:#172466;color:#fff;border-bottom:3px solid #ffda36}.section-title h1{color:#203a91;font-family:Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:0}.eyebrow{color:#53658e}.market-card{background:#edf1fa;border:0;border-top:4px solid #19276d}.market-card.expanded{background:#f8f4e6;border:0;border-top:4px solid #f4c828}.card-top{min-height:40px;align-items:flex-start}.card-top span+span{display:block;max-width:76%;line-height:1.45;white-space:normal;text-align:right;color:#58698d}.city-tag{font-size:15px!important;white-space:nowrap}.card-content .small{display:inline-block;padding:5px 8px;border-radius:2px;font-size:10px;font-weight:700;line-height:1.25}.card-content>div:first-child .small{background:#d8e4fa;color:#1b397e}.card-content>div:nth-child(2) .small{background:#ffdf4d;color:#4a3800}.metric{color:#172769}.box{border:0;background:#edf1fa}.box.estimate{background:#f8f4e6}.qcard,.year-grid article,.support-grid article{box-shadow:none}.qcard:nth-child(odd),.year-grid article:nth-child(odd),.support-grid article:nth-child(odd){background:#edf1fa}.qcard:nth-child(even),.year-grid article:nth-child(even),.support-grid article:nth-child(even){background:#f8f4e6}.year-grid h2,.qcard h2,.support-grid h2{color:#213c92}.year-grid li:before{color:#d5aa00}.directory{border:0;background:#fff}@media(max-width:900px){.card-top span+span{display:block;max-width:72%;font-size:8px}.card-top{min-height:34px}.card-content .small{font-size:8px;padding:4px}.market-card{gap:6px}}@media(max-width:520px){.card-top span+span{font-size:7px;max-width:72%}.card-top{min-height:40px}.city-tag{font-size:9px!important}.card-content .small{font-size:7px;padding:2px 3px}}

/* Readable headings and body copy in plan pages. */
@media(min-width:901px){#q4 .qcard h2{font-size:21px;line-height:1.25}#q4 .qcard>p:not(.action){font-size:16px;line-height:1.5}#q4 .qcard .ordinal{font-size:12px}#q4 .qcard .chips span{font-size:15px;padding:8px 10px}#q4 .budget-tag.pending{font-size:14px}#q4 .budget-tag strong{font-size:19px}#q4 .budget-tag small{font-size:12px}#year .year-grid h2{font-size:21px;line-height:1.3;min-height:56px}#year .year-grid li{font-size:16px;line-height:1.4;margin-bottom:16px}#year .year-grid article>span{font-size:12px}#year .year-grid article b{font-size:14px}#support .support-grid h2{font-size:21px}#support .support-grid p{font-size:16px;line-height:1.55}#support .support-grid article>span{font-size:12px}}
#restaurants .directory-controls .group,#restaurants #city-filter{display:none!important}#restaurants #restaurant-search{min-width:180px}
@media(min-width:901px) and (max-height:800px){#q4 .qcard h2,#year .year-grid h2,#support .support-grid h2{font-size:18px}#q4 .qcard>p:not(.action),#year .year-grid li,#support .support-grid p{font-size:14px}#year .year-grid li{margin-bottom:10px}#year .year-grid h2{min-height:48px}}

@media(min-width:1000px){
body .layout{max-width:none;width:100%;height:100dvh;margin:0;padding:0;display:grid;grid-template-columns:225px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;gap:0;overflow:hidden}
body .layout>header{grid-column:2;grid-row:1;margin:0 26px;min-width:0}
body .layout>nav{grid-column:1;grid-row:1/4;display:flex;flex-direction:column;gap:3px;margin:0;padding:32px 13px;background:#111c49;border:0;overflow-y:auto}
body .layout>nav:before{content:"CTS  /  SHOWYOUNG";display:block;color:#fff;font-size:14px;letter-spacing:.1em;font-weight:800;padding:10px 12px 30px}
body .layout>nav .tab{display:block;text-align:left;width:100%;color:#bac5de;padding:14px 12px;border:0;border-radius:3px;line-height:1.3}
body .layout>nav .tab.active{background:#ffda36;color:#111c49}
body .layout>nav [data-panel=market]{order:1} body .layout>nav [data-panel=visits]{order:2} body .layout>nav [data-panel=q4]{order:3} body .layout>nav [data-panel=year]{order:4} body .layout>nav [data-panel=support]{order:5} body .layout>nav [data-panel=restaurants]{order:6}
body .layout>main{grid-column:2;grid-row:2;margin:0 26px;min-height:0;overflow:hidden}
body .layout>footer{grid-column:2;grid-row:3;margin:0 26px}
}

#visits{overflow:auto}#visits .visit-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:16px;min-height:0}#visits .visit-card{background:#fff;border:1px solid #e2e5ef;padding:18px 20px}#visits .visit-card h2{font-size:13px;margin:0 0 13px;letter-spacing:.06em}#visits .visit-row{display:grid;grid-template-columns:1fr 1.5fr 1.25fr;gap:10px;padding:8px 0;border-bottom:1px solid #edf0f5;font-size:11px;line-height:1.35;color:#52617a}#visits .visit-row strong{color:#111c66}#visits .visit-insight{border-left:3px solid #ffda36;padding:0 0 0 12px;margin:0 0 17px}#visits .visit-insight h3{font-size:12px;margin:0 0 6px;color:#111c66}#visits .visit-insight p{font-size:12px;line-height:1.45;color:#52617a;margin:0}#visits .visit-note{font-size:10px;color:#7d86a6;margin-top:9px}@media(max-width:900px){#visits .visit-grid{grid-template-columns:1fr}#visits .visit-card{padding:14px}#visits .visit-row{font-size:10px}#visits .visit-insight{margin-bottom:12px}}

nav [data-panel=market]{order:1}nav [data-panel=visits]{order:2}nav [data-panel=q4]{order:3}nav [data-panel=year]{order:4}nav [data-panel=support]{order:5}nav [data-panel=restaurants]{order:6}
@font-face{font-family:CTSPreviewSerif;src:url('/assets/cts-preview-regular.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:CTSPreviewSerif;src:url('/assets/cts-preview-bold.woff') format('woff');font-style:normal;font-weight:700;font-display:swap}body.cts-font-preview #market{font-family:CTSPreviewSerif,'Noto Sans CJK SC',serif}body.cts-font-preview #market h1,body.cts-font-preview #market .metric,body.cts-font-preview #market .box,body.cts-font-preview #market .market-card,body.cts-font-preview #market .footnote{font-family:CTSPreviewSerif,'Noto Sans CJK SC',serif}body.cts-font-preview #market h1{font-weight:700;letter-spacing:-.025em;text-transform:none}#market .bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px}#market .bottom-grid .box{background:#fff!important;border:1px solid #e0e5ef!important}#restaurants #city-filter{display:block!important}#q4 .detail-lines span{display:block;margin:0 0 4px}#q4 .detail-lines span:before{content:"•";color:#d4a900;margin-right:8px}.support-grid ul{list-style:none;margin:0;padding:0}.support-grid li{position:relative;padding-left:16px;margin:0 0 14px;line-height:1.4;color:#485879;font-size:16px}.support-grid li:before{content:"•";position:absolute;left:0;color:#d4a900}.panel h1,.panel h2{text-transform:capitalize}.pdf-download{background:#172466;color:#fff}@media(max-width:900px){.support-grid li{font-size:11px;margin-bottom:6px}#q4 .detail-lines span{margin-bottom:2px}}.logo{background:transparent url(/assets/cts-logo.png) center/contain no-repeat!important;color:transparent!important;font-size:0!important}#q4 .q4grid{grid-template-rows:repeat(4,minmax(0,1fr))}#q4 .detail-lines span{margin-bottom:2px}@media(max-height:850px){#q4 .qcard{padding-top:8px;padding-bottom:8px}#q4 .detail-lines{font-size:14px!important;line-height:1.3!important}}@media(min-width:901px){#q4 .q4grid{grid-template-rows:minmax(0,.86fr) minmax(0,.86fr) minmax(0,.86fr) minmax(0,1.42fr);gap:12px}#q4 .qcard:last-child{padding-top:14px;padding-bottom:14px}#q4 .qcard:last-child .detail-lines{line-height:1.45}#q4 .qcard:last-child .detail-lines span{margin-bottom:4px}#q4 .qcard:last-child .chips span{padding:7px 10px}}
/* CTS: stack content areas vertically */
nav [data-panel=visits],body .layout>nav [data-panel=visits]{order:1!important}
nav [data-panel=market],body .layout>nav [data-panel=market]{order:2!important}
body .layout>main{overflow:auto}
#market.panel.active,#visits.panel.active,#q4.panel.active,#year.panel.active,#support.panel.active{overflow:visible;min-height:min-content}
#market .market-cards{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto!important;flex:none!important;min-height:0!important;max-height:none!important;gap:10px!important}
#market .market-card{min-height:125px!important;max-height:none!important;padding:13px 20px!important}
#market .card-content{margin:7px 0}
#market .bottom-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;margin-top:10px!important}
#market .bottom-grid .box{min-height:0!important;padding:12px 18px!important}
#market .footnote{padding:8px 0!important}
#visits .visit-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
#visits .visit-card{padding:14px 18px!important}
#visits .visit-row{padding:5px 0!important}
#visits .visit-insight{margin-bottom:10px!important}
#q4 .q4grid,#year .year-grid,#support .support-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:none!important;grid-auto-rows:auto!important;flex:none!important;min-height:0!important;gap:10px!important}
#q4 .q4grid .qcard,#year .year-grid article,#support .support-grid article{display:flex!important;flex-direction:column!important;align-items:flex-start!important;min-height:0!important;overflow:visible!important;padding:14px 18px!important}
#q4 .qcard h2,#year .year-grid h2,#support .support-grid h2{margin:5px 0 8px!important}
#q4 .qcard .detail-lines,#q4 .qcard .chips,#q4 .qcard .budget-tag{position:static!important;grid-area:auto!important;margin:4px 0!important}
#year .year-grid li,#support .support-grid li{margin-bottom:4px!important}
#year .year-grid article b{margin-top:8px!important}
#restaurants tbody{grid-template-columns:minmax(0,1fr)!important}

#q4 .q4grid,#year .year-grid,#support .support-grid{gap:6px!important}
#q4 .q4grid .qcard,#year .year-grid article,#support .support-grid article{padding:8px 16px!important}
#q4 .qcard h2,#year .year-grid h2,#support .support-grid h2{font-size:16px!important;line-height:1.15!important;margin:3px 0 4px!important}
#year .year-grid h2 br{display:none}
#year .year-grid ul,#support .support-grid ul{display:flex!important;flex-wrap:wrap;gap:4px 22px;margin:0!important;padding:0!important}
#year .year-grid li,#support .support-grid li{font-size:12px!important;line-height:1.25!important;margin:0!important}
#year .year-grid article b{font-size:11px!important;margin-top:5px!important;line-height:1.2!important}
#year .year-grid article b br{display:none}
#q4 .qcard .detail-lines{display:flex!important;flex-wrap:wrap;gap:3px 18px;font-size:12px!important;line-height:1.2!important}
#q4 .qcard .detail-lines span{margin:0!important}
#q4 .qcard .chips{display:flex!important;flex-direction:row!important;flex-wrap:wrap;gap:5px;margin:3px 0!important}
#q4 .qcard .chips span{padding:3px 7px!important;font-size:11px!important}
#q4 .qcard .budget-tag{padding:2px 7px!important;font-size:11px!important}

/* Adaptive desktop layout: keep the report within the available screen. */
@media(min-width:901px){
body .layout>main{overflow:hidden!important}
.panel.active{height:100%;min-height:0!important;overflow:hidden!important}
.panel .section-title{flex:0 0 auto;margin:clamp(6px,1.2vh,14px) 0!important}
.panel .section-title h1{font-family:CTSPreviewSerif,Georgia,serif;font-size:clamp(25px,3.25vh,38px)!important;font-weight:700!important;letter-spacing:-.02em;color:#15265e}
#visits .visit-grid{flex:1!important;min-height:0!important;grid-template-rows:minmax(0,1.15fr) minmax(0,1fr)!important;gap:clamp(5px,1vh,12px)!important}
#visits .visit-card{min-height:0!important;padding:clamp(8px,1.3vh,15px) 18px!important;display:flex;flex-direction:column}
#visits .visit-card h2{font-size:clamp(13px,1.6vh,17px)!important;margin:0 0 6px!important;color:#15265e}
#visits .visit-row{flex:1!important;min-height:0!important;align-items:center;padding:1px 0!important;font-size:clamp(10px,1.25vh,14px)!important}
#visits .visit-insight{flex:1!important;margin:0 0 3px!important}
#visits .visit-insight h3{font-size:clamp(11px,1.3vh,14px)!important;margin:0 0 3px!important}
#visits .visit-insight p{font-size:clamp(10px,1.2vh,13px)!important;line-height:1.3!important}
#visits .visit-note{margin-top:3px!important}
#market .market-cards{flex:1.7!important;min-height:0!important;grid-template-rows:repeat(2,minmax(0,1fr))!important}
#market .market-card{min-height:0!important}
#market .bottom-grid{flex:1!important;min-height:0!important;grid-template-rows:repeat(2,minmax(0,1fr))!important}
#market .bottom-grid .box{overflow:hidden}
#market .metric{font-family:CTSPreviewSerif,Georgia,serif;font-size:clamp(23px,3.4vh,37px)!important;line-height:1.1}
#q4 .q4grid,#year .year-grid,#support .support-grid{flex:1!important;min-height:0!important}
#q4 .q4grid{grid-template-rows:repeat(4,minmax(0,1fr))!important}
#year .year-grid{grid-template-rows:repeat(5,minmax(0,1fr))!important}
#support .support-grid{grid-template-rows:repeat(4,minmax(0,1fr))!important}
#q4 .qcard,#year .year-grid article,#support .support-grid article{justify-content:center}
#q4 .qcard h2,#year .year-grid h2,#support .support-grid h2{font-size:clamp(14px,1.8vh,20px)!important;color:#142a69}
#restaurants .directory{flex:1;min-height:0;display:flex;flex-direction:column}
#restaurants .table-wrap{flex:1;min-height:0;overflow:hidden}
#restaurants tbody tr:not([hidden]){min-height:0!important;height:36px!important}
#restaurants tbody td{padding:2px 6px!important}
}
#directory-total{font-weight:800;color:#15265e;white-space:nowrap}
#restaurant-count{font-weight:700;color:#52617a;white-space:nowrap}
#page-jump{width:54px;padding:7px 5px;border:1px solid #cbd2e0;font:inherit;color:#15265e}
#page-go{padding:7px 12px;border:1px solid #cbd2e0;background:white;color:#15265e;font-weight:700}
.pagination .page-jumper{display:inline-flex;gap:5px;align-items:center;margin-left:8px;white-space:nowrap}
#restaurants .directory-controls{gap:8px}
#restaurants .view-mode.active{background:#ffda36;color:#111c49}

/* CTS readability and screen-fit refinement */
@media(min-width:901px){
#market .card-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;width:100%!important}
#market .card-top span+span{white-space:nowrap!important;max-width:none!important;width:auto!important;flex:0 1 auto!important;font-size:clamp(8px,.68vw,14px)!important;letter-spacing:0!important;text-align:right!important;opacity:1!important}
#market .card-content{display:grid!important;grid-template-columns:minmax(115px,.85fr) minmax(115px,.85fr) minmax(260px,2fr)!important;align-items:center!important;gap:15px!important;margin:3px 0!important}
#market .card-content>div{min-width:0!important}
#market .metric{font-size:clamp(21px,3vh,34px)!important}
#market .small{white-space:nowrap!important}
#market .footnote{font-size:clamp(9px,1.1vh,12px)!important}
#q4 .q4grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;grid-auto-flow:row!important;gap:10px!important}
#q4 .q4grid .qcard{justify-content:flex-start!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:clamp(8px,1.5vh,16px) 18px!important}
#q4 .qcard h2{font-size:clamp(16px,2vh,21px)!important;line-height:1.2!important}
#q4 .qcard .detail-lines{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;line-height:1.25!important}
#q4 .qcard .chips{display:flex!important;flex-wrap:wrap!important;margin-top:5px!important}
#q4 .qcard .budget-tag{margin-top:auto!important}
#year .year-grid{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:repeat(5,minmax(0,1fr))!important;gap:6px!important}
#year .year-grid article{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;align-items:flex-start!important;overflow:hidden!important;padding:clamp(5px,.8vh,9px) 16px!important}
#year .year-grid article h2{margin:2px 0 3px!important;line-height:1.15!important;flex:none!important}
#year .year-grid ul{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-content:start!important;gap:2px 20px!important;line-height:1.2!important;min-height:0!important;margin:0!important;padding:0!important}
#year .year-grid li{margin:0!important;font-size:clamp(10px,1.25vh,14px)!important;line-height:1.25!important}
#year .year-grid article b{margin:4px 0 0!important;line-height:1.2!important;flex:none!important}
#support .support-grid{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:repeat(4,minmax(0,1fr))!important;gap:6px!important}
#support .support-grid article{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;overflow:hidden!important;padding:clamp(5px,1vh,10px) 16px!important}
#support .support-grid article h2{margin:2px 0 4px!important;line-height:1.2!important}
#support .support-grid ul{display:flex!important;flex-direction:column!important;gap:2px!important;align-items:flex-start!important;margin:0!important;padding:0!important}
#support .support-grid li{font-size:clamp(10px,1.3vh,14px)!important;line-height:1.25!important;margin:0!important}
}
.panel p,.panel li,.panel .subtle,.panel .eyebrow,.panel .ordinal,.panel .case-line,.panel .disclaimer,.panel .footnote,.panel .visit-note,.panel .visit-row span,.panel .visit-insight p,.panel .card-top span+span,.panel .card-foot span,.panel .assumptions span,.panel .estimate-line,.panel .estimate p,.panel .budget-tag.pending,#restaurants tbody td,#restaurants tbody td small,#restaurants .pagination>span{color:#171717!important;opacity:1!important}
.panel .metric,.panel h1,.panel h2,.panel h3,.panel .city-tag,.panel strong,.panel b{opacity:1!important}

@media(min-width:901px){
#support .support-grid{max-height:none!important;flex:1!important;min-height:0!important}
#support .support-grid article{overflow:visible!important}
#support .support-grid li{font-size:clamp(12px,1.45vh,16px)!important;line-height:1.35!important}
#q4 .qcard .detail-lines{font-size:clamp(12px,1.5vh,16px)!important;line-height:1.3!important}
#market .card-top span+span{font-size:clamp(11px,.78vw,15px)!important;font-weight:600!important}
}
.panel .small,.panel .box-title,.panel .budget-tag,.panel .estimate-line,.panel .case-line,.panel .disclaimer,.panel .footnote,.panel .visit-note,.panel .card-foot span,.panel .metric span{color:#171717!important}

/* CTS legibility: prevent old fixed heights from overlapping content. */
@media(min-width:901px){
#year .year-grid article{justify-content:center!important;gap:3px!important}
#year .year-grid article h2{min-height:0!important;height:auto!important;font-size:clamp(18px,2.1vh,23px)!important;line-height:1.15!important;margin:0!important}
#year .year-grid article>span{font-size:clamp(13px,1.45vh,16px)!important;line-height:1.15!important;color:#111!important}
#year .year-grid ul{flex:0 0 auto!important;height:auto!important;min-height:0!important;margin:1px 0!important;gap:4px 24px!important}
#year .year-grid li{font-size:clamp(14px,1.65vh,18px)!important;line-height:1.3!important}
#year .year-grid article b{font-size:clamp(14px,1.55vh,17px)!important;line-height:1.25!important;margin:0!important}
#q4 .qcard h2,#support .support-grid h2{font-size:clamp(19px,2.2vh,24px)!important}
#q4 .qcard .ordinal,#support .support-grid article>span{font-size:clamp(14px,1.6vh,17px)!important;color:#111!important}
#q4 .qcard .detail-lines,#support .support-grid li{font-size:clamp(15px,1.7vh,18px)!important;line-height:1.35!important}
#q4 .qcard .chips span,#q4 .qcard .budget-tag,#q4 .qcard .budget-tag small{font-size:clamp(13px,1.5vh,16px)!important}
#visits .visit-row,#visits .visit-insight p{font-size:clamp(13px,1.45vh,16px)!important;line-height:1.3!important}
#visits .visit-insight h3,#visits .visit-card h2{font-size:clamp(14px,1.6vh,18px)!important}
#visits .visit-note,#market .footnote{font-size:clamp(12px,1.3vh,14px)!important}
#market .card-top span+span{font-size:clamp(12px,.9vw,16px)!important}
#market .small,#market .bottom-grid,#market .card-foot{font-size:clamp(13px,1.45vh,16px)!important}
#restaurants .directory{font-size:15px!important}
}
body .layout>footer,body .layout>header .subtitle,.panel .visit-note,.panel .eyebrow,.panel .subtle,.panel .ordinal,#year .year-grid article>span,#support .support-grid article>span,#restaurants tbody td,#restaurants small,#restaurant-count{color:#111!important;opacity:1!important}
body .layout>nav .tab:not(.active){color:#fff!important}

body .layout>header .identity span{color:#111!important;opacity:1!important}
@media(min-width:901px){
#market .card-content{grid-template-columns:max-content max-content minmax(0,1fr)!important;gap:clamp(18px,2vw,34px)!important}
#market .card-content>div{min-width:max-content!important}
#market .box .assumptions span,#market .box p,#market .box .estimate-line,#market .box .disclaimer{font-size:clamp(12px,1.35vh,15px)!important;line-height:1.25!important}
}
@media(min-width:901px){
#restaurants tbody tr:not([hidden]){height:62px!important;min-height:62px!important}
#restaurants tbody td,#restaurants tbody td:nth-child(1),#restaurants tbody td:nth-child(3){font-size:14px!important;line-height:1.3!important}
#restaurants tbody td:nth-child(2) strong,#restaurants tbody td:nth-child(2) small{font-size:14px!important;line-height:1.4!important}
#restaurants .pagination,#restaurants .pagination button,#restaurants .directory-controls button,#restaurants .directory-controls input,#restaurants .directory-controls select{font-size:13px!important}
}
#restaurants .pagination button:disabled{color:#111!important;opacity:1!important;background:#eee!important}

/* Keep card content inside its allocated height, including at scaled desktop resolutions. */
@media(min-width:901px){
#market .market-cards .market-card{display:grid!important;grid-template-rows:auto auto auto!important;align-content:space-between!important;gap:2px!important;padding:7px 18px!important;overflow:hidden!important}
#market .market-card .card-top,#market .market-card .card-content,#market .market-card .card-foot{margin:0!important;min-height:0!important}
#market .market-card .card-foot{align-self:end!important;line-height:1.1!important}
#market .market-card .card-foot button{padding:5px 10px!important;line-height:1.1!important}
#market .metric{margin-top:2px!important;line-height:1!important}
#q4 .qcard:last-child h2 br{display:none!important}
#q4 .qcard:last-child .detail-lines{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:14px!important;row-gap:2px!important;font-size:clamp(13px,1.5vh,17px)!important;line-height:1.2!important}
#q4 .qcard:last-child .detail-lines span{margin:0!important}
#q4 .qcard:last-child .chips{gap:3px!important}
#q4 .qcard:last-child .chips span{font-size:clamp(11px,1.3vh,14px)!important;padding:2px 5px!important}
#q4 .qcard:last-child .budget-tag{margin-top:auto!important;line-height:1.1!important;padding:2px 6px!important}
#restaurants .pagination>div{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:nowrap!important;white-space:nowrap!important;gap:6px!important;flex:0 0 auto!important}
#restaurants .pagination>span{flex:1 1 auto!important;min-width:0!important}
#restaurants .pagination button{margin:0!important;padding:6px 9px!important;white-space:nowrap!important}
#restaurants .page-jumper{margin-left:0!important}
#restaurants #page-jump{width:55px!important}
}

@media(min-width:901px){
#market .market-card{min-width:0!important;max-width:100%!important}
#market .market-card .card-top,#market .market-card .card-content,#market .market-card .card-foot{min-width:0!important;max-width:100%!important}
#market .market-card .card-top span+span{font-size:clamp(8px,.72vw,15px)!important;min-width:0!important;letter-spacing:0!important}
#restaurants .directory-controls{flex-wrap:wrap!important}
#restaurants .directory-controls #restaurant-search{min-width:100px!important;flex:1 1 150px!important}
}

/* Align the CTS report cards across each row. */
@media(min-width:901px){
#market .market-cards .market-card{grid-template-columns:minmax(0,1fr)!important}
#market .market-card .card-foot{width:100%!important;display:flex!important;justify-content:space-between!important;align-items:center!important}
#market .market-card .card-foot button{margin-left:auto!important}
#year .year-grid article{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto auto!important;column-gap:20px!important;row-gap:3px!important;align-content:center!important;align-items:center!important}
#year .year-grid article>span{grid-column:1!important;grid-row:1!important}
#year .year-grid article>h2{grid-column:1!important;grid-row:2!important}
#year .year-grid article>ul{grid-column:1!important;grid-row:3!important}
#year .year-grid article>b{position:static!important;grid-column:2!important;grid-row:1 / 4!important;align-self:end!important;justify-self:end!important;text-align:right!important;white-space:nowrap!important}
#support .support-grid article{display:grid!important;grid-template-columns:minmax(230px,36%) minmax(0,1fr)!important;grid-template-rows:auto auto!important;align-content:center!important;align-items:center!important;column-gap:24px!important;row-gap:5px!important}
#support .support-grid article>span{grid-column:1!important;grid-row:1!important}
#support .support-grid article>h2{grid-column:1!important;grid-row:2!important;align-self:start!important;font-size:clamp(22px,2.7vh,30px)!important;line-height:1.18!important;margin:0!important}
#support .support-grid article>ul{grid-column:2!important;grid-row:1 / 3!important;align-self:center!important;justify-self:start!important;min-width:0!important}
}

/* Blue and white CTS plan palette. */

body,.layout{background:#fff!important}

body .layout>nav .tab.active{background:#dbe8fc!important;color:#11245f!important;border-color:#dbe8fc!important}
.tab.active{background:#1b397e!important;color:#fff!important;border-bottom-color:#1b397e!important}
body .layout>nav .tab.active{background:#dbe8fc!important;color:#11245f!important}
.download,.pdf-download{background:#1b397e!important;color:#fff!important}
#market .market-card.expanded{background:#f4f8ff!important;border-top-color:#315fa8!important}
#market .card-content>div:nth-child(2) .small{background:#d8e4fa!important;color:#142b68!important}

#q4 .qcard:nth-child(even),#year .year-grid article:nth-child(even),#support .support-grid article:nth-child(even){background:#f4f8ff!important}


#q4 .qcard .budget-tag:not(.pending){background:#d8e4fa!important;color:#11245f!important}


#restaurants .view-mode.active,#restaurants .directory-controls .view-mode.active{background:#1b397e!important;color:#fff!important;border-color:#1b397e!important}

@font-face{font-family:CTSOpenSans;src:url('/assets/open-sans-regular.woff') format('woff');font-style:normal;font-weight:400;font-display:block}
@font-face{font-family:CTSOpenSans;src:url('/assets/open-sans-bold.woff') format('woff');font-style:normal;font-weight:700;font-display:block}
@font-face{font-family:CTSNotoSans;src:url('/assets/cts-sans.woff') format('woff');font-style:normal;font-weight:400;font-display:block}
@font-face{font-family:CTSNotoSans;src:url('/assets/cts-sans-bold.woff') format('woff');font-style:normal;font-weight:700;font-display:block}
@font-face{font-family:CTSNotoCJK;src:url('/assets/cts-cjk.woff') format('woff');font-style:normal;font-weight:400;font-display:block}
body,body *{font-family:CTSPreviewSerif,CTSNotoCJK,serif!important}
header,header *,footer,footer *,input,select{font-family:CTSNotoSans,CTSNotoCJK,sans-serif!important}
header a,header button,nav,nav *,.sidebar,.sidebar *,button,button *{font-family:CTSPreviewSerif,CTSNotoCJK,serif!important}
html body,html body *:not(#cts-never-match):not(#cts-font-sentinel){font-family:CTSOpenSans,CTSNotoCJK,sans-serif!important}
@media (min-width:901px){
  #market .market-cards{flex:1.35 1 0!important}
  #market .bottom-grid{flex:1.35 1 0!important;grid-template-rows:minmax(0,1.15fr) minmax(0,0.85fr)!important}
  #market .bottom-grid .box{padding:clamp(6px,0.9vh,10px) 18px!important}
  #market .bottom-grid .box p{margin:3px 0!important}
  #market .bottom-grid .box .box-title{margin-bottom:4px!important}
  #market .bottom-grid .estimate-line,#market .bottom-grid .disclaimer{margin:2px 0!important}
}
