/* Editorial layout and object family, matched to the supplied card-news palette. */
.editorial-hero .hero-object{background:#dfedfc}.editorial-hero .hero-object img{width:132%;height:132%;left:-12%;top:-15%}
.detail-actions{margin:26px 0 20px;display:flex;flex-wrap:wrap;gap:12px}.detail-actions .primary-link{background:white;color:#102849;border:1px solid #102849;gap:10px;padding:14px 20px;transition:background .15s,color .15s,border-color .15s}.detail-actions .primary-link:hover{background:#102849;color:white;border-color:#102849}.official-button:hover{background:#0749ad}.official-button:focus-visible,.detail-actions .primary-link:focus-visible{outline:3px solid #7aabfa;outline-offset:4px}
.benefit-choice .choice-title{display:block;min-height:2.8em;line-height:1.4;word-break:keep-all}.benefit-choice .choice-title>span{display:block;font-size:inherit}.benefit-choice{overflow-wrap:normal}
.category-intro{display:grid;grid-template-columns:1fr 46%;min-height:250px;margin:0 0 36px;background:#dfedfc;overflow:hidden}.category-intro>div:first-child{padding:36px}.category-intro h3{font-size:44px;letter-spacing:-.04em;margin:0 0 16px}.category-intro p:last-child{line-height:1.7;max-width:32ch;color:#536b89}.category-intro-art{position:relative;min-height:250px;overflow:hidden}.category-intro-art img{position:absolute;width:120%;height:145%;object-fit:contain;top:-21%;left:-5%}.category-page .editorial-hero,.category-page .category-section{display:none}.category-page .results-section{padding-top:32px}.category-page .detail-masthead{display:none}.category-page .benefit-detail{padding-top:0}.nearby-banner{margin-top:40px}.filter-bar{justify-content:space-between}
@media(max-width:800px){.category-intro h3{font-size:34px}.category-intro>div:first-child{padding:26px}.benefit-choice .choice-title{font-size:15px}.benefit-options .benefit-choice{flex-basis:220px}}
@media(max-width:520px){.editorial-hero{display:flex;flex-direction:column}.editorial-hero .hero-copy{width:100%}.editorial-hero .hero-object{position:relative;inset:auto;opacity:1;width:100%;height:240px}.editorial-hero .hero-object img{width:115%;height:150%;left:0;top:-26%}.category-intro{grid-template-columns:1fr 43%;min-height:220px}.category-intro>div:first-child{padding:24px 0 20px 20px}.category-intro h3{font-size:30px;white-space:nowrap}.category-intro p:last-child{font-size:13px}.category-intro-art{min-height:220px}.category-intro-art img{width:170%;height:130%;left:-20%;top:-8%}.detail-actions .primary-link{width:100%}}
:root{--blue:#0864e9;--ink:#102849;--muted:#536b89;--line:#d4dfec;--blue-soft:#edf5ff;--radius:4px}
.shell,.header-inner{max-width:1280px}.header-inner{height:80px}.brand{font-weight:900;letter-spacing:-1.2px}.brand>span{display:none}.preview-note{background:#f7f9fc}
.editorial-hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;min-height:520px;border-bottom:1px solid var(--line);overflow:hidden}.hero-copy{position:relative;z-index:1;padding:46px 0 50px}.hero-copy .intro{padding:0 0 28px}.hero-copy h1{font-size:clamp(56px,6.5vw,86px);font-weight:850;line-height:1.08;letter-spacing:-.06em;margin-bottom:25px}.hero-copy .eyebrow{margin-bottom:26px}.hero-copy .search{max-width:520px;background:white}.hero-object{height:520px;overflow:hidden;position:relative}.hero-object img{width:115%;height:115%;max-width:none;object-fit:contain;position:absolute;left:0;top:-7%;transform:rotate(-8deg)}
.search{border-radius:4px;border-color:#b3c5dc}.search button{border-left:1px solid var(--blue);transition:background .15s}.search button:hover{background:#084ca9}
.tiles{gap:0;padding:26px 0}.tile{min-height:190px;border:0;border-right:1px solid var(--line);border-radius:0;padding:10px 24px 14px;overflow:hidden}.tile:last-child{border-right:0}.tile:hover,.tile[aria-pressed=true]{background:#f6faff;border-color:var(--line)}.tile[aria-pressed=true]::after{content:'';position:absolute;bottom:0;left:24px;width:48px;height:3px;background:var(--blue)}.tile .tile-number{font-size:13px;color:var(--blue);font-weight:700;margin-bottom:52px}.tile .category-object{position:absolute;right:16px;top:0;width:106px;height:106px;object-fit:contain;mix-blend-mode:multiply;transition:transform .18s}.tile:hover .category-object{transform:translateY(-3px)}.tile .arrow{top:auto;bottom:17px;font-size:22px}.tile strong{font-size:22px}.tile small{padding-right:18px}.nearby-banner{background:white;border-block:1px solid var(--line);border-radius:0;padding:22px 0;margin:8px 0 48px}.nearby-banner>span:first-child{background:var(--blue-soft);padding:12px;border-radius:50%}.banner-action{border-left:1px solid var(--line);padding:14px 0 14px 24px}
.results-section{scroll-margin-top:98px}.benefit-browser{grid-template-columns:250px minmax(0,1fr);gap:42px}.benefit-options{border-right:1px solid var(--line);padding-right:24px}.benefit-choice{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:20px 14px;min-height:110px}.benefit-choice[aria-pressed=true]{background:#f4f8ff;border-bottom:2px solid var(--blue);box-shadow:inset 3px 0 var(--blue)}.benefit-choice small{display:none}.benefit-choice span{font-size:17px}.benefit-choice strong{font-size:14px;font-weight:550}.detail-masthead{display:flex;align-items:center;justify-content:space-between;height:116px;border-bottom:1px solid var(--line);margin-bottom:28px;overflow:hidden}.detail-masthead>span{font-size:12px;font-weight:650;letter-spacing:.06em;color:var(--muted)}.detail-masthead img{width:170px;height:170px;object-fit:contain}.benefit-detail h2{font-size:32px;line-height:1.3}.benefit-detail .eyebrow{font-size:12px}.benefit-highlight{background:white;padding:0;margin:26px 0}.benefit-highlight strong{font-size:42px;font-weight:800;letter-spacing:-.04em}.highlight-top{align-items:baseline}.discount-note{max-width:none;font-size:14px}.facts>div{padding:24px 0;font-size:15px;grid-template-columns:72px minmax(0,1fr)}.provider-box{background:#f5f8fc;border:0;border-radius:4px;padding:22px}.benefit-detail .caution{background:#fff8ef;border-left:2px solid #ed967c;border-radius:0}
.official-button{padding:0 0 0 20px;gap:22px;min-height:58px;border-radius:4px;overflow:hidden;transition:background .15s,transform .12s}.official-button>span:first-child{padding:12px 0}.official-button small{display:block;font-size:11px;font-weight:400;opacity:.85;margin-top:4px}.official-button>span[aria-hidden]{display:grid;place-items:center;align-self:stretch;width:52px;border-left:1px solid #ffffff50;transition:background .15s}.official-button:hover>span[aria-hidden]{background:#ffffff18}.official-button:active,.primary-link:active,.outline-button:active,.search button:active{transform:translateY(1px)}.primary-link,.outline-button{border-radius:4px;min-height:46px}.filter-group button{border-radius:3px}.filter-group button[aria-pressed=true]{box-shadow:inset 0 -2px var(--blue)}.label-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px}.label-toggle input{appearance:none;flex:none;width:34px;height:20px;border:1px solid #93a8c2;border-radius:12px;background:#c2cbd6;position:relative;cursor:pointer;transition:background .15s}.label-toggle input::after{content:'';position:absolute;left:3px;top:3px;width:12px;height:12px;border-radius:50%;background:white;transition:transform .15s}.label-toggle input:checked{background:var(--blue);border-color:var(--blue)}.label-toggle input:checked::after{transform:translateX(14px)}
@media(max-width:800px){.editorial-hero{grid-template-columns:1.2fr 1fr;min-height:360px}.hero-copy{padding:34px 0}.hero-copy h1{font-size:52px}.hero-copy .intro>p:last-child{font-size:15px}.hero-object{height:360px}.hero-object img{width:140%;height:120%;left:-8%;top:0}.hero-copy .search{width:calc(100% + 40px)}.tile{padding-inline:14px;min-height:170px}.tile strong{font-size:19px}.tile .category-object{width:84px;height:84px;right:7px}.tile .tile-number{margin-bottom:46px}.tile small{font-size:12px}.benefit-browser{grid-template-columns:1fr;gap:16px}.benefit-options{display:flex;border-right:0;padding:0 0 12px;gap:10px;overflow:auto}.benefit-choice{flex:0 0 190px;border:1px solid var(--line);min-height:92px;padding:16px}.benefit-detail{border:0;padding-top:0}.detail-masthead{height:88px;margin-bottom:24px}.detail-masthead img{width:120px;height:120px}.benefit-detail h2{font-size:27px}}
@media(max-width:520px){.shell,.header-inner{padding-inline:22px}.header-inner{height:66px;gap:25px}.header nav{gap:20px}.brand{font-size:23px}.header nav a{font-size:13px}.editorial-hero{grid-template-columns:1fr;position:relative;min-height:0;overflow:hidden}.hero-copy{padding:35px 0 25px}.hero-copy h1{font-size:54px;max-width:260px}.hero-copy .eyebrow{font-size:11px;margin-bottom:20px}.hero-copy .intro>p:last-child{font-size:14px;max-width:235px}.hero-copy .intro{padding-bottom:24px}.hero-copy .search{width:100%;height:54px}.hero-copy .search input{font-size:13px;padding:10px}.hero-copy .search button{padding:0 20px}.hero-object{position:absolute;right:-52px;top:36px;width:170px;height:240px;opacity:.9;pointer-events:none}.hero-object img{width:135%;height:110%;left:0;top:0}.hero-copy h1,.hero-copy .intro>p{position:relative;z-index:2}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 0;row-gap:16px}.tile{min-height:156px;padding:8px 12px 14px}.tile:nth-child(2){border-right:0}.tile .category-object{width:88px;height:88px}.tile .tile-number{margin-bottom:45px}.tile strong{font-size:19px}.tile small{max-width:140px;font-size:11px}.nearby-banner{gap:10px;margin-bottom:32px}.nearby-banner strong{font-size:16px}.nearby-banner p{font-size:12px;max-width:190px}.banner-action{font-size:12px;padding-left:12px}.nearby-banner>span[data-icon]{display:none}.benefit-detail h2{font-size:26px}.benefit-highlight strong{font-size:36px}.highlight-top span{font-size:12px}.facts>div{grid-template-columns:46px minmax(0,1fr);gap:12px;font-size:14px;padding:21px 0}.provider-box{padding:17px 14px}.official-button{width:100%}.detail-masthead>span{font-size:10px}.discount-note{font-size:13px}.results-section{scroll-margin-top:85px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

.detail-heading{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;margin-bottom:14px}.detail-heading h3{margin:0;min-width:0}.benefit-status{display:inline-flex;align-items:center;flex:none;gap:6px;padding:6px 10px;border:1px solid #b8d3fa;border-radius:4px;background:#edf5ff;color:#0755c4;font-size:12px;font-weight:700;line-height:1.4;white-space:nowrap}.benefit-status::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.benefit-status--ended{background:#f1f3f5;border-color:#d9dfe6;color:#596575}.benefit-status--upcoming{background:#fff6e8;border-color:#ead3ad;color:#80551a}.benefit-status--unknown{background:#f5f7fa;border-color:#d9dfe6;color:#536b89}


.nearby-banner{position:relative;isolation:isolate;overflow:hidden;background:#f4f8ff;padding:26px 24px;min-height:130px}.banner-map{position:absolute;z-index:-1;right:0;top:0;width:52%;height:100%;object-fit:cover;mask-image:linear-gradient(to right,transparent,#000 28%);pointer-events:none}.nearby-banner .banner-action{border-left:0;background:#f4f8ffe8;padding:12px}.nearby-banner:hover{background:#e8f2ff}.nearby-banner:hover .banner-action{background:#0864e9;color:white}.nearby-banner>div{max-width:60%}@media(max-width:520px){.nearby-banner{padding:22px 16px;flex-wrap:wrap}.nearby-banner>div{max-width:75%}.banner-map{width:75%;opacity:.55}.nearby-banner .banner-action{margin-left:auto}}


/* Editorial close crop: show the contents, not the full silhouette. */
.editorial-hero .hero-object{background:#edf4fc}.editorial-hero .hero-object img{width:180%;height:180%;left:-38%;top:-64%;object-fit:contain;transform:rotate(-7deg)}
@media(max-width:800px){.editorial-hero .hero-object img{width:195%;height:195%;left:-43%;top:-63%}}
@media(max-width:520px){.editorial-hero{display:flex;flex-direction:column}.editorial-hero .hero-object{position:relative;inset:auto;width:100%;height:250px;opacity:1}.editorial-hero .hero-object img{width:165%;height:220%;left:-26%;top:-95%}}


/* Compact category directory: shared text and artwork alignment. */
.tiles{padding:20px 0}.tile{display:grid;grid-template-columns:minmax(0,1fr) 72px;grid-template-rows:22px 32px auto;column-gap:10px;row-gap:4px;min-height:132px;padding:12px 20px}.tile .tile-number{grid-column:1;grid-row:1;margin:0;align-self:start}.tile strong{grid-column:1;grid-row:2;font-size:20px;align-self:center;white-space:nowrap}.tile small{grid-column:1;grid-row:3;padding:0;font-size:12px;line-height:1.5;align-self:start;word-break:keep-all}.tile .category-object{position:static;grid-column:2;grid-row:1 / 3;width:72px;height:72px;align-self:center;justify-self:center}.tile .arrow{position:static;grid-column:2;grid-row:3;justify-self:center;align-self:center;font-size:20px;line-height:1}.tile[aria-pressed=true]::after{left:20px}
@media(max-width:800px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.tile:nth-child(2){border-right:0}.tile{min-height:128px}.tile strong{font-size:19px}}
@media(max-width:520px){.tiles{row-gap:12px;padding:16px 0}.tile{grid-template-columns:minmax(0,1fr) 48px;column-gap:4px;min-height:124px;padding:10px}.tile strong{font-size:17px}.tile small{font-size:11px}.tile .category-object{width:52px;height:60px}.tile .tile-number{margin:0}.tile .arrow{font-size:18px}}


/* Desktop first screen and compact section navigation. */
@media(min-width:801px){.header-inner{height:64px}.editorial-hero{height:clamp(290px,calc(100svh - 250px),480px);min-height:0}.editorial-hero .hero-object{height:100%;min-height:0}.hero-copy{padding:20px 28px 20px 0}.hero-copy h1{font-size:clamp(46px,7.5vh,76px);margin-bottom:16px}.hero-copy .eyebrow{margin-bottom:16px}.hero-copy .intro{padding-bottom:20px}.hero-copy .intro>p:last-child{font-size:15px;line-height:1.5}.hero-copy .search{height:50px}.tiles{padding:14px 0}.tile{min-height:116px;grid-template-rows:18px 28px auto;padding-block:8px}.benefit-browser{grid-template-columns:185px minmax(0,1fr);gap:36px}.benefit-options{padding-right:20px}.category-intro{min-height:180px;margin-bottom:30px}.category-intro-art{min-height:180px}.category-intro>div:first-child{padding:26px 32px}.category-intro h3{font-size:36px;margin-bottom:10px}.category-intro p:last-child{margin-bottom:0}}
.benefit-choice{display:flex;align-items:center;gap:12px;min-height:58px;padding:15px 10px;background:transparent}.benefit-choice[aria-pressed=true]{background:transparent;box-shadow:none;border-bottom:2px solid var(--blue);color:var(--blue)}.benefit-choice:hover{background:#f2f7ff}.benefit-choice .choice-number{flex:none;font-size:11px;font-weight:650;color:var(--muted)}.benefit-choice[aria-pressed=true] .choice-number{color:var(--blue)}.benefit-choice .choice-title{min-height:0;font-size:14px;font-weight:600;line-height:1.6;word-break:keep-all}.benefit-detail{padding-top:0}.benefit-detail .eyebrow{margin-top:0}
@media(max-width:800px){.benefit-options .benefit-choice{width:auto;flex:0 0 auto;min-height:48px;padding:12px 14px}.benefit-choice .choice-title{font-size:13px}}

.benefit-choice{flex-direction:row;justify-content:flex-start;text-align:left}.benefit-choice .choice-title{flex:1}.benefit-choice .choice-number{align-self:center}

/* Reference B: independent text, map and link columns prevent pin overlap. */
.nearby-banner{display:grid;grid-template-columns:36px minmax(0,1fr) minmax(230px,32%) 128px;gap:16px;align-items:center;padding:0 24px;min-height:112px;border:1px solid #dae5f5;border-radius:4px;background:#f1f6ff;isolation:auto}.nearby-banner .banner-map{position:static;grid-column:3;grid-row:1;z-index:auto;width:100%;height:110px;object-fit:cover;opacity:1;mask-image:linear-gradient(to right,transparent,#000 15%,#000 85%,transparent)}.nearby-banner>span[data-icon]{grid-column:1;grid-row:1;display:flex;color:#0864e9;padding:0;background:none}.nearby-banner>span[data-icon] svg{width:32px;height:36px;fill:#0864e9;stroke:#0864e9}.nearby-banner>span[data-icon] svg circle{fill:white;stroke:white}.nearby-banner>div{grid-column:2;grid-row:1;max-width:none}.nearby-banner strong{font-size:19px}.nearby-banner p{font-size:13px;line-height:1.6;margin:5px 0 0;max-width:none}.nearby-banner .banner-action{grid-column:4;grid-row:1;white-space:nowrap;justify-self:end;background:transparent;padding:10px 0;border:0;font-size:13px;color:#0864e9;margin:0}.nearby-banner:hover{background:#eaf2ff}.nearby-banner:hover .banner-action{background:transparent;color:#0644a2;text-decoration:underline;text-underline-offset:5px}
@media(max-width:800px){.nearby-banner{grid-template-columns:30px minmax(0,1fr) 120px;gap:12px;padding:18px}.nearby-banner .banner-map{grid-column:2;grid-row:2;height:88px}.nearby-banner>div{grid-column:2 / 4}.nearby-banner .banner-action{grid-column:3;grid-row:2}.nearby-banner strong{font-size:17px}}


.tile{grid-template-columns:minmax(0,1fr) 102px;overflow:hidden}.tile .category-object{grid-row:1 / 4;width:138px;height:138px;max-width:none;justify-self:start;align-self:center;transform:translate(0,4px)}.tile:hover .category-object{transform:translate(0,1px)}.tile strong,.tile small,.tile .tile-number{position:relative;z-index:1}@media(max-width:520px){.tile{grid-template-columns:minmax(0,1fr) 50px}.tile .category-object{width:88px;height:114px;transform:translate(0,4px)}.tile small{max-width:95px}}


/* Separate landing and information hierarchy. */
.category-page .section-top,.category-page .filter-bar{display:none}.category-page .results-section{padding-top:0}.category-header{padding:30px 0 28px;margin-bottom:32px;border-bottom:1px solid var(--line)}.category-back{font-size:12px;color:var(--muted)}.category-back span{padding-left:10px}.category-heading-row{display:flex;align-items:baseline;gap:14px;margin-top:16px}.category-heading-row h1{font-size:36px;letter-spacing:-.04em;margin:0}.category-heading-row>span{font-size:12px;color:var(--muted)}.category-header>p{margin:10px 0 0;font-size:14px;color:var(--muted)}.category-page .benefit-detail>.eyebrow{display:none}.category-page .benefit-browser{gap:42px}.category-page .benefit-options{border-right:0}.category-page .benefit-detail h2{font-size:30px}.category-page .detail-lead{font-size:15px;margin:12px 0 0}.category-page .benefit-highlight{margin:24px 0 22px}.category-page .facts>div{padding:19px 0}.category-page .benefit-options{position:sticky;top:88px;align-self:start}.category-page .benefit-choice{min-height:52px;padding:13px 8px}.nearby-banner .banner-map{object-fit:cover;object-position:center;clip-path:inset(0);transform:scale(1.35);mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}.nearby-banner{column-gap:28px;grid-template-columns:36px minmax(0,1fr) minmax(230px,35%) 128px}
.hero-scenes{height:100%;min-height:0;position:relative;background:#eff5fb;overflow:hidden}.hero-scene-frame{position:absolute;inset:0 0 44px}.hero-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .65s ease}.hero-scene.is-current{opacity:1}.hero-scene-controls{position:absolute;bottom:0;left:0;right:0;height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:#f2f7fc}.hero-scene-controls>div{display:flex;gap:20px}.hero-scene-controls button{border:0;background:none;color:#536b89;font-size:12px;min-height:40px;padding:0 4px;cursor:pointer}.hero-scene-controls button[aria-pressed=true]{color:#0864e9;font-weight:750;box-shadow:inset 0 -2px #0864e9}#hero-pause{width:40px}.hero-scene-controls button:focus-visible{outline:2px solid #0864e9;outline-offset:-2px}
@media(max-width:800px){.hero-scenes{min-height:340px}.category-page .benefit-options{position:static}.category-page .benefit-browser{gap:20px}.category-header{padding:24px 0;margin-bottom:22px}.category-heading-row h1{font-size:30px}.category-page .benefit-detail h2{font-size:25px}.nearby-banner{grid-template-columns:30px minmax(0,1fr) 120px;column-gap:12px}.nearby-banner .banner-map{transform:none;object-fit:cover}}
@media(max-width:520px){.hero-scenes{width:100%;height:280px;min-height:280px}.hero-scene-controls>div{gap:16px}}
@media(prefers-reduced-motion:reduce){.hero-scene{transition:none}}


.nearby-banner .banner-map-window{display:block;padding:0;border-radius:0;background:none;grid-column:3;grid-row:1;position:relative;align-self:stretch;overflow:hidden;min-height:110px;mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}.nearby-banner .banner-map-window .banner-map{position:absolute;inset:-20% -25%;width:150%;height:140%;max-width:none;transform:none;mask-image:none;object-fit:cover}@media(max-width:800px){.nearby-banner .banner-map-window{grid-column:2;grid-row:2;min-height:88px}.nearby-banner .banner-map-window .banner-map{width:150%;height:140%;opacity:1}}

/* Shared minimal controls: one geometry, one active state, one focus treatment. */
:root{--control-radius:4px;--control-height:44px}
button,input,select,a{ -webkit-tap-highlight-color:transparent }
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.primary-link,.official-button,.outline-button,.search,.search button,select{border-radius:var(--control-radius)}
.primary-link,.official-button,.search button{background:var(--blue);color:white}
.primary-link:hover,.official-button:hover,.search button:hover{background:#074bad;color:white}
.outline-button{background:white;border:1px solid #b5c8df;color:var(--ink)}
.outline-button:hover{background:var(--blue-soft);border-color:var(--blue);color:var(--blue)}
button:disabled{opacity:.6;cursor:wait}
.filter-group button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid var(--line);border-radius:4px;background:white;color:var(--muted);box-shadow:none}
.filter-group button[aria-pressed=true]{background:var(--blue-soft);color:var(--blue);border-color:#97bbef;box-shadow:inset 0 -2px var(--blue)}
.filter-group svg,.place-marker svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.map-controls{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:12px;margin:16px 0}
#my-location{order:-2;margin:0;min-height:44px;padding:10px 18px}.map-auto-note{order:-1;font-size:12px;color:var(--muted)}
#location-status{flex-basis:100%;font-size:12px;color:var(--muted)}
.map-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap;margin:20px 0 16px}
.map-display-options{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.map-display-options .label-toggle{font-size:13px;white-space:nowrap}
.place-marker{display:flex;align-items:center;gap:6px}.current-location-dot{display:block;width:16px;height:16px;background:#0864e9;border:3px solid white;border-radius:50%;box-shadow:0 0 0 8px #0864e92b}
#place-count{font-size:14px;color:var(--blue);margin-left:6px}.place-panel>h2{font-size:20px}.place-panel>.muted{font-size:12px;line-height:1.7}.place-item{padding:18px 0}.place-item>p{font-size:13px}.place-item>a{font-size:12px}
.map-panel{display:flex;flex-direction:column;align-self:start}#map-status{position:static;inset:auto;padding:14px 16px;margin:0;font-size:13px;line-height:1.6}#kakao-map{flex:none;height:500px}
@media(max-width:800px){.map-display-options{gap:16px}.map-toolbar{gap:8px}#kakao-map{height:380px}.map-types{flex-wrap:wrap}}
@media(max-width:520px){#map-types{display:grid;grid-template-columns:repeat(2,1fr);width:100%;gap:8px}.map-display-options{width:100%;justify-content:flex-start}.map-auto-note{font-size:11px}#kakao-map{height:340px}}
.category-nav{display:flex;gap:12px;border-bottom:1px solid var(--line);padding-top:8px;overflow:auto}.category-nav a{display:inline-flex;align-items:center;gap:9px;white-space:nowrap;padding:16px 22px;color:var(--muted);border-bottom:3px solid transparent;font-size:14px;font-weight:650}.category-nav a[aria-current=page]{color:var(--blue);border-color:var(--blue);background:#edf5ff}.category-nav a:hover{color:var(--blue);background:#f5f9ff}.category-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}@media(max-width:520px){.category-nav{gap:0}.category-nav a{padding:13px 12px;font-size:12px;gap:6px}.category-nav svg{width:18px;height:18px}}
/* Align peer actions by shared height and baseline. */
.map-controls button,.detail-actions>.primary-link,.detail-actions>.outline-button{box-sizing:border-box;min-height:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;line-height:1.2;border-width:1px;border-style:solid;font-size:14px;font-weight:650;margin-block:0}
.map-controls .primary-link{border-color:var(--blue)}.map-controls{align-items:center}.map-controls .text-button{border-color:transparent;background:transparent;color:var(--blue)}
/* Compact rounded action family. Icons are drawn SVGs, labels stay accessible text. */
:root{--control-radius:10px}
.official-button,.primary-link,.outline-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 15px;border-radius:10px;font-size:13px;font-weight:650;line-height:1.4;box-shadow:none}
.official-button{background:#0864e9;color:white;border:1px solid #0864e9;overflow:visible}
.official-button>span:first-child,.official-button>span{padding:0}.official-button>svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.official-button>span[aria-hidden]{width:auto;border:0;align-self:auto;background:none}.official-button .sr-only{position:absolute}
.search{border-radius:10px;overflow:hidden;height:46px}.search button{font-size:13px;padding:0 20px;border-radius:0 9px 9px 0;min-height:44px}
.map-controls button{height:40px;min-height:40px;border-radius:10px;font-size:13px;padding:0 14px}#my-location{height:40px;min-height:40px}
.filter-group button{min-height:38px;padding:7px 12px;border-radius:9px;font-size:13px;box-shadow:none}.filter-group button[aria-pressed=true]{box-shadow:none;background:#eaf3ff;border-color:#aac8ef}
select,.route-controls input{min-height:40px;border-radius:9px;font-size:13px}.benefit-status{border-radius:7px}
.usage-row .steps{margin:0;padding-left:20px}.usage-row .steps li{padding:0;margin:0 0 9px;font-size:14px;line-height:1.7}.usage-row .steps li:last-child{margin-bottom:0}.benefit-detail .how-to{padding:0;margin:20px 0}.how-to>.verification-note{font-size:12px;margin:0 0 12px}
.station-nav{color:var(--ink);text-decoration:none}.station-nav[aria-current=page]{color:var(--blue);border-bottom:2px solid var(--blue)}.station-nav:hover{background:#f2f7ff}
#fuel-browser{margin:0;padding:0;border:0}#fuel-browser>h2{font-size:28px;margin:0 0 14px;letter-spacing:-.035em}.fuel-stations>li>div>strong{font-size:16px}.station-map>summary{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid #d4dfec;border-radius:8px;font-size:12px;color:#0864e9;cursor:pointer;margin:6px 0 12px;background:#f7faff}.station-map>summary::before{content:'+' / '';font-size:16px}.station-map[open]>summary::before{content:'−' / ''}.station-map>summary::marker{content:''}.station-map>summary::-webkit-details-marker{display:none}.station-map .outline-button{margin-top:12px;font-size:12px;min-height:36px}.station-map-canvas{width:100%;height:280px;border-radius:10px;overflow:hidden}.fuel-stations>li{padding:20px 0}
.fuel-stations .station-map>summary{width:max-content;max-width:100%;min-width:116px;box-sizing:border-box;flex:none;white-space:nowrap;padding:9px 16px;line-height:1.4;gap:8px;text-indent:0}.station-map>summary::before{position:static;flex:0 0 12px;text-align:center;margin:0}.station-map>summary::after{content:none}
.venue-link,.online-links a{color:var(--blue);font-size:14px}.online-links{border:0;padding:0;margin:8px 0 0}.online-links ul{margin:0;padding:0;list-style:none}.online-links li{margin:0 0 7px}
.header-search{margin-left:auto;display:flex;align-items:center;width:260px;height:38px;border:1px solid #d4dfec;border-radius:10px;background:#f7f9fc;overflow:hidden}.header-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;padding:9px 12px;font-size:12px}.header-search button{display:grid;place-items:center;width:40px;height:36px;flex:none;padding:0;border:0;background:transparent;color:var(--blue)}.header-search svg{width:18px;height:18px}.header-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 2px #0864e91a}
@media(max-width:640px){.results-section,#selected-detail,#fuel-browser{scroll-margin-top:112px}.header-inner{flex-wrap:wrap;height:auto;padding-block:12px;gap:10px 24px}.header nav{margin-left:auto;height:34px}.header-search{width:100%;margin:0;height:36px}.header nav a{padding:0}.header-search button{height:34px}}
.search-result-summary{margin:18px 0;color:var(--muted);font-size:14px}.search-result-list{list-style:none;padding:0;margin:0}.search-result-list>li{padding:22px 0;border-bottom:1px solid var(--line)}.search-result-list>li>span{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}.search-result-list a{display:inline-flex;align-items:center;gap:10px;font-size:22px;font-weight:750;color:var(--blue)}.search-result-list a svg{width:17px;height:17px}.search-result-list a:hover{text-decoration:underline;text-underline-offset:5px}.search-result-list p{font-size:14px;color:var(--muted);margin:9px 0 0}.results-section:has(.search-result-list){padding-top:32px;min-height:400px}

/* Artwork crops independently so it cannot stretch the category card rows. */
.tile{height:124px;min-height:124px;grid-template-columns:minmax(0,1fr);grid-template-rows:18px 28px auto;padding:12px 16px}
.tile .tile-number,.tile strong,.tile small{grid-column:1;max-width:65%}
.tile strong{margin-bottom:0}
.tile .category-object{position:absolute;right:-24px;top:50%;width:138px;height:138px;transform:translateY(-50%);pointer-events:none}
.tile:hover .category-object{transform:translateY(calc(-50% - 3px))}
@media(min-width:801px){.tile{height:116px;min-height:116px}}
@media(max-width:520px){.tile{padding:10px;height:124px;min-height:124px}.tile .category-object{right:-28px;width:94px;height:124px}.tile small{max-width:68%}}

@media(max-width:640px){.facts>div{grid-template-columns:64px minmax(0,1fr);gap:12px}.facts dt{white-space:nowrap}.category-page .benefit-choice{border-radius:8px}.category-heading-row h1{margin:0}}

@media(min-width:521px) and (max-width:800px){.hero-copy .search{width:100%}}

@media(max-width:640px){.fuel-stations{max-height:none;overflow:visible}}

.place-item>a{display:inline-block;margin:5px 14px 0 0}.place-item .place-benefit{color:var(--blue);font-weight:600}.national-directory{margin:28px 0;padding:20px;border:1px solid var(--line);border-radius:12px}.national-directory summary{cursor:pointer;font-weight:700}.directory-search{display:flex;gap:12px;align-items:center}.directory-search input{min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px}.national-directory ul{list-style:none;padding:0}.national-directory li{padding:14px 0;border-bottom:1px solid var(--line)}.national-directory li p,.national-directory li small{font-size:13px;color:var(--muted);display:block;margin:6px 0}.national-directory li a{font-size:13px;color:var(--blue)}.directory-pager{display:flex;gap:12px}.directory-pager button{padding:8px 18px;border-radius:8px;border:1px solid var(--line);background:white}.directory-pager button:disabled{opacity:.4}
.retailer-entry{padding:18px 0;border-top:1px solid var(--line,#d5e1f1)}.retailer-entry h3{font-size:18px;margin:0 0 10px}.retailer-entry>a{display:inline-block;margin:0 18px 12px 0}.retailer-entry details{font-size:14px;line-height:1.8}.retailer-entry summary{cursor:pointer}.retailer-entry details p{color:#526b88}
.place-cluster{min-width:48px;min-height:36px;border-radius:20px!important;font-weight:750;box-shadow:0 2px 8px #0c326326}
.location-pending-note,.national-directory li small.location-pending-note{color:#075ac8;font-size:13px;line-height:1.7;margin:12px 0;word-break:keep-all;overflow-wrap:anywhere}
#nearby-view>.intro{padding:22px 0 12px}#nearby-view>.intro h1{font-size:32px;margin:0 0 8px}#nearby-view>.intro .eyebrow{display:none}#nearby-view>.intro p:last-child{margin:0;font-size:14px}
#map-search-status:empty{display:none}#nearby-view .map-controls{margin:10px 0;gap:8px 14px}#nearby-view .map-toolbar{margin:10px 0;gap:8px 16px}
@media(min-width:801px){.map-layout{height:550px;min-height:0}.map-layout .map-panel{align-self:stretch;min-height:0}.map-layout #kakao-map{flex:1;height:auto;min-height:350px}.map-layout .place-panel{max-height:100%;min-height:0}}
.map-coverage-note{margin:12px 0 20px;padding:14px 18px;background:#f3f7fc;border:1px solid #d7e3f2;border-radius:12px;font-size:14px;line-height:1.7}.map-coverage-note strong,.map-coverage-note span{display:block}.map-coverage-note span{color:#526b88}.map-coverage-note a,.map-coverage-note button{display:inline-block;margin:5px 18px 0 0;font-size:13px}.online-link-group+.online-link-group{margin-top:18px}.online-link-group h3{font-size:14px;margin:0 0 5px;color:var(--navy,#102e52)}

.map-coverage-note summary{cursor:pointer;color:#075ac8;font-size:13px;font-weight:600}.map-coverage-note{padding:10px 14px;margin:8px 0 12px}
.place-marker{font-size:var(--map-label-size,12px);height:36px;min-height:36px;max-width:164px;box-sizing:border-box;padding:5px 8px;gap:4px;border-radius:10px;white-space:nowrap}.place-marker svg{width:17px;height:17px}.place-marker-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.place-marker.place-cluster{font-size:12px;min-width:56px;justify-content:center;padding:5px 12px;border-radius:20px}.place-marker:focus-visible{outline:3px solid #072f6f;outline-offset:3px}.search-place-marker{font-size:12px;padding:6px 9px}

/* Detailed conditions use the same reading grid as dates and venue links. */
.category-page .facts>div{grid-template-columns:100px minmax(0,1fr);gap:20px}.facts dt{word-break:keep-all;white-space:normal}.facts dd{overflow-wrap:anywhere}.conditions-row dd{color:#526b88}.detail-fact dd{line-height:1.8}.station-nav .choice-title{font-size:12px}.hero-scene-controls>div{gap:16px}
@media(max-width:640px){.category-page .facts>div{grid-template-columns:76px minmax(0,1fr);gap:12px}.facts dt{white-space:normal}.hero-scene-controls{padding-inline:12px}.hero-scene-controls>div{gap:12px}}

.source-notes{margin:18px 0;font-size:12px;color:var(--muted)}.source-notes summary{cursor:pointer;min-height:32px;line-height:32px}.source-notes ul{padding-left:18px;line-height:2}.source-notes a{color:var(--blue)}

/* Channel dates and venues share a compact reading grid. */
.channel-periods{list-style:none;padding:0;margin:0}.channel-periods li{display:grid;grid-template-columns:78px minmax(0,1fr);gap:12px;margin:0 0 8px}.channel-periods li:last-child{margin-bottom:0}.channel-periods strong{font-size:13px;color:var(--blue);font-weight:650}.channel-venues section+section{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.channel-venues h3{font-size:13px;color:var(--blue);margin:0 0 6px;font-weight:650}.channel-venues p{margin:0;line-height:1.8}.channel-venues .small-note{margin:4px 0;font-size:12px}.channel-links{display:flex;gap:6px 18px;flex-wrap:wrap;margin-top:7px}.channel-links a{font-size:13px;color:var(--blue);text-decoration:underline;text-underline-offset:3px}.venue-match-note{font-size:12px!important;color:var(--muted);line-height:1.8}.venue-match-note strong{color:var(--blue);font-weight:650;margin-right:8px}.map-related-benefits{padding:16px 18px;margin:12px 0;background:#f5f9ff;border:1px solid var(--line);border-radius:12px}.map-related-benefits h2{font-size:15px;margin:0 0 10px}.map-related-benefits ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px 24px}.map-related-benefits a{color:var(--blue);font-size:14px;font-weight:650}.map-related-benefits li p{font-size:12px;margin:5px 0;line-height:1.7;color:var(--muted)}.map-related-benefits>.small-note{margin-bottom:0}
@media(max-width:640px){.channel-periods li{grid-template-columns:1fr;gap:2px;margin-bottom:12px}.channel-links{display:block}.channel-links a{display:block;margin:6px 0}.map-related-benefits ul{grid-template-columns:1fr}}

/* The same official directories are reachable from shopping navigation. */
.category-header{padding-top:22px;padding-bottom:20px;margin-bottom:16px}
@media(max-width:800px){.category-header{padding:16px 0;margin-bottom:6px}}
.fuel-pending-note summary{cursor:pointer;font-weight:600;padding:6px 0;min-height:32px;box-sizing:border-box}
.fuel-pending-note p{margin:8px 0;font-size:13px;line-height:1.7}
.fuel-pending-note ul{margin:6px 0 12px;padding-left:18px;line-height:1.8}
.retailer-entry details>ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;list-style:none;padding:0;margin:10px 0 0}
.retailer-entry details>ul>li{padding:7px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.7;overflow-wrap:anywhere;min-width:0;color:var(--muted)}
@media(max-width:800px){.retailer-entry details>ul{grid-template-columns:1fr;gap:0}}
.menu-directory{margin:0;padding:0;border:0;min-width:0}.menu-directory>h2{font-size:clamp(22px,2.2vw,30px);line-height:1.4;letter-spacing:-.035em;margin:0 0 14px;word-break:keep-all}.directory-nav .choice-title{font-size:13px;line-height:1.6}.menu-directory .directory-search{margin:24px 0 14px;flex-wrap:wrap}.menu-directory .directory-search input{flex:1 1 190px}.menu-directory .retailer-entry{min-width:0;overflow-wrap:anywhere}
@media(max-width:800px){.benefit-options .directory-nav{white-space:normal;max-width:240px}.directory-nav .choice-title{font-size:12px}.menu-directory .directory-search{align-items:stretch;flex-direction:column}.menu-directory .directory-search input{flex:auto;width:100%;box-sizing:border-box}}

.detail-fact dd{white-space:pre-line}
.related-match{display:inline-block;margin-left:8px;padding:3px 8px;border-radius:6px;background:var(--ice,#edf5ff);color:var(--blue,#0866ec);font-size:12px;line-height:1.5;vertical-align:middle}

/* Navigation, actions, filters and disclosures each keep one visual meaning. */
.benefit-options .benefit-choice{width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;color:var(--ink);text-decoration:none}
.benefit-options .benefit-choice[aria-current=page]{color:var(--blue);border-bottom:2px solid var(--blue);background:transparent}
.benefit-options .benefit-choice[aria-current=page] .choice-number{color:var(--blue)}
.benefit-options .benefit-choice:hover{background:var(--blue-soft)}
/* Programmatic arrival focus is on a non-interactive reading region. */
#selected-detail:focus-visible{outline:none}
.filter-help{font-size:12px;line-height:1.6;color:var(--muted);margin:8px 0 14px}
.directory-search input,.route-controls input,.route-controls select{height:44px;min-height:44px;border-radius:var(--control-radius);padding:10px 12px;font-size:14px}
.directory-search{font-size:13px}.menu-directory .directory-search{margin-bottom:0}
.directory-sources{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;margin:22px 0 4px}
.directory-sources .text-button{display:inline-flex;align-items:center;min-height:40px;padding:8px 0;text-decoration:underline;text-underline-offset:4px}
.venue-link,.online-links a,.retailer-entry>a,.national-directory li>a,.source-notes a{line-height:1.7;text-decoration:underline;text-underline-offset:4px}
.venue-link:hover,.online-links a:hover,.retailer-entry>a:hover,.national-directory li>a:hover,.source-notes a:hover{color:#074bad}
.national-directory li>.text-button{margin-left:18px;min-height:40px}
.directory-pager button{min-height:40px;border-radius:var(--control-radius);font-size:13px;color:var(--blue)}
.directory-pager button:hover:not(:disabled){background:var(--blue-soft);border-color:var(--blue)}
button:disabled{cursor:not-allowed}button[aria-busy=true]{cursor:wait}
.source-notes>summary,.fuel-pending-note>summary,.retailer-entry details>summary,.map-coverage-note>summary{display:flex;align-items:center;gap:9px;min-height:40px;line-height:1.6;list-style:none;cursor:pointer}
.source-notes>summary::before,.fuel-pending-note>summary::before,.retailer-entry details>summary::before,.map-coverage-note>summary::before{content:'+' / '';flex:0 0 14px;color:var(--blue);font-size:18px;font-weight:400;text-align:center}
.source-notes[open]>summary::before,.fuel-pending-note[open]>summary::before,.retailer-entry details[open]>summary::before,.map-coverage-note[open]>summary::before{content:'−' / ''}
.source-notes>summary::-webkit-details-marker,.fuel-pending-note>summary::-webkit-details-marker,.retailer-entry details>summary::-webkit-details-marker,.map-coverage-note>summary::-webkit-details-marker{display:none}
@media(max-width:800px){.benefit-options .benefit-choice{width:auto;flex:none;border:1px solid var(--line);border-radius:var(--control-radius);background:white}.benefit-options .benefit-choice[aria-current=page]{border:1px solid var(--blue);background:var(--blue-soft)}.benefit-options .benefit-choice .choice-title{max-width:200px}}
@media(max-width:640px){.directory-sources{align-items:flex-start;flex-direction:column;gap:4px}.directory-sources .text-button,.directory-pager button,.source-notes>summary,.fuel-pending-note>summary,.retailer-entry details>summary,.map-coverage-note>summary{min-height:44px}.official-button,.outline-button,.primary-link{min-height:44px}}

/* Four consistent destinations below the map, without duplicate inline lists. */
.map-directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0 0}
.map-directory-link{display:flex;align-items:center;gap:18px;min-width:0;min-height:104px;padding:22px 24px;border:1px solid var(--line);border-radius:14px;background:#fff;transition:background .15s,border-color .15s}
.map-directory-link:hover{background:var(--blue-soft);border-color:#98bbee}
.map-directory-link:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.map-directory-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:12px;background:var(--blue-soft);color:var(--blue)}
.map-directory-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.map-directory-copy{display:flex;flex-direction:column;gap:6px;min-width:0;word-break:keep-all;overflow-wrap:anywhere}
.map-directory-copy strong{font-size:17px;line-height:1.5;letter-spacing:-.025em;color:var(--ink)}
.map-directory-copy>span{font-size:13px;line-height:1.6;color:var(--muted)}
@media(max-width:640px){.map-directory-grid{gap:10px}.map-directory-link{flex-direction:column;align-items:flex-start;gap:12px;min-height:164px;padding:16px 14px;border-radius:12px}.map-directory-icon{width:36px;height:36px;flex-basis:36px;border-radius:10px}.map-directory-icon svg{width:24px;height:24px}.map-directory-copy{gap:5px}.map-directory-copy strong{font-size:15px}.map-directory-copy>span{font-size:12px}}

/* Separate the main schedule from conditions; nest facility schedules under it. */
.period-summary{line-height:1.85;word-break:keep-all;overflow-wrap:anywhere}
.period-part{color:var(--muted)}
.period-primary{color:var(--ink);font-weight:650}
.period-divider{display:inline-block;margin:0 12px;color:#a0afc2;font-weight:400}
.period-details{margin:18px 0 0;padding:16px 0 0;border-top:1px solid #e8eef5}
.period-details>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:14px;margin-top:10px;font-size:13px;line-height:1.8}
.period-details>div:first-child{margin-top:0}
.period-details dt{color:var(--blue);font-weight:650}
.period-details dd{color:var(--muted);word-break:keep-all;overflow-wrap:anywhere}
@media(max-width:640px){.period-divider{margin:0 8px}.period-details>div{grid-template-columns:1fr;gap:3px;margin-top:14px}.period-details{margin-top:14px;padding-top:14px}}

/* Stored participation search: pending records remain readable, never pretend to be pins. */
#map-query::placeholder{color:#7b8594;opacity:1}.map-result{min-width:0;overflow-wrap:anywhere}.map-result a{font-size:12px}.map-search-help{margin:0 0 8px}.map-result strong{flex-basis:100%}
