/* Optional reading mode. All changes stay on screen; printed guides keep their layout. */
.senior-panel{display:none}
@media screen{
 .senior-panel{display:block;background:#edf0e5;border-bottom:1px solid #bbc6b6;padding:8px max(16px,calc((100% - 1280px)/2));color:#263d33}
 .senior-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;max-width:1280px;margin:auto}
 #seniorToggle{min-height:44px;padding:8px 14px;border:2px solid #344b40;border-radius:5px;color:#263d33;background:#fffef9;font:700 16px/1.3 Arial,sans-serif;cursor:pointer}
 #seniorHint{font-size:14px;line-height:1.4}
 #seniorTop{margin-left:auto;font:700 16px/1.3 Arial,sans-serif;text-decoration:underline;padding:10px 4px;min-height:44px;align-content:center}
 .senior-nav[hidden],#seniorTop[hidden]{display:none}
 html[data-senior="true"]{--font-scale:1.35;--muted:#485747;scroll-behavior:auto;scroll-padding-top:var(--senior-offset,220px)}
 html[data-senior="true"][data-text-size="large"]{--font-scale:1.55}
 html[data-senior="true"] .site-header{position:static;height:auto;min-height:72px}
 html[data-senior="true"] .site-header>nav,html[data-senior="true"] .mobile-nav{display:none}
 html[data-senior="true"] .header-tools{margin-left:auto}
 html[data-senior="true"] .senior-panel{position:sticky;top:0;z-index:18;background:#f4f4e9;border-bottom:3px solid #344b40;padding-top:10px;padding-bottom:12px;box-shadow:0 3px 8px #263d331a}
 html[data-senior="true"] #seniorToggle{background:#344b40;color:white;min-height:48px;font-size:18px}
 html[data-senior="true"] #seniorHint{font-size:16px}
 html[data-senior="true"] .senior-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:10px auto 0;max-width:1280px}
 .senior-nav a{display:flex;align-items:center;justify-content:center;text-align:center;min-height:56px;padding:8px;border:2px solid #344b40;border-radius:5px;background:#fffef9;color:#20362b;font:700 18px/1.25 Arial,sans-serif;text-decoration:none;overflow-wrap:anywhere}
 .senior-nav a:hover,.senior-nav a:focus-visible,.senior-nav a[aria-current="page"]{background:#344b40;color:white}
 .senior-nav a.senior-help{border-color:#813f2d;background:#fff0e6;color:#672c1e}
 html[data-senior="true"] :is(a,button,input,select,summary):focus-visible{outline:4px solid #b25c17;outline-offset:3px}
 html[data-senior="true"] :is(.button,.text-button,.filter,.food-chips button,.food-card-links a,summary,select,input[type="search"],.view-switch button){min-height:52px;font-size:max(18px,1em)}
 html[data-senior="true"] :is(.check-label,.food-check,.food-favorite,.place-select){min-height:52px}
 html[data-senior="true"] input[type="checkbox"]{width:26px;height:26px;flex-shrink:0}
 html[data-senior="true"] :is(.subtle,.food-card .food-categories,.food-disclaimer){color:#485747}
 html[data-senior="true"] :is(section[id],.consular-intro,#airportContacts){scroll-margin-top:0}
 html[data-senior="true"] .day-nav{position:static;gap:8px}
 html[data-senior="true"] .day-nav a{min-height:64px;border:2px solid #82937c;font-size:20px}
 html[data-senior="true"] .day-nav a span{font-size:18px}
 html[data-senior="true"] .day-nav a.active{background:#344b40;color:white;border-color:#344b40}
 html[data-senior="true"] .activity-toolbar,html[data-senior="true"] .filters{flex-wrap:wrap;gap:10px}
 html[data-senior="true"] .food-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
 html[data-senior="true"] .food-fields label{font-size:18px}
 html[data-senior="true"] :is(.consular-grid,.health-grid,.practical-grid){grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media screen and (max-width:1000px){
 html[data-senior="true"] :is(.food-grid,.consular-grid,.health-grid,.travel-tips,.transport-notes,.choice-panel,.practical-grid){grid-template-columns:1fr}
 html[data-senior="true"] .senior-nav{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media screen and (max-width:760px){
 .senior-controls{gap:6px 12px}
 #seniorHint{flex:1;min-width:110px;font-size:12px}
 html[data-senior="true"] #seniorHint{display:none}
 html[data-senior="true"] #seniorTop{font-size:16px}
 html[data-senior="true"] .senior-nav{gap:6px;margin-top:8px}
 html[data-senior="true"] .senior-nav a{min-height:60px;font-size:17px;padding:6px 4px}
 html[data-senior="true"] .senior-panel{padding:8px 12px}
 html[data-senior="true"] .day-nav{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
 html[data-senior="true"] .day-nav a:last-child{grid-column:1/-1}
 html[data-senior="true"] :is(.place-grid:not(.list-view),.food-fields,.food-notes,.route-panel,.intro-grid){grid-template-columns:1fr}
 html[data-senior="true"] .place-card{display:flex;flex-direction:column;min-width:0}
 html[data-senior="true"] .food-card-top{flex-wrap:wrap}
 html[data-senior="true"] .food-price{text-align:left}
 html[data-senior="true"] :is(.section-heading,.selections-bar,.health-bottom){flex-direction:column;align-items:stretch;gap:12px}
 html[data-senior="true"] .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 html[data-senior="true"] :is(.food-card,.place-body){overflow-wrap:anywhere}
 html[data-senior="true"] .flight-leg{flex-wrap:wrap}
}
@media screen and (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media screen{
 html[data-senior="true"] .day-nav a[aria-current="date"]{background:#344b40;color:white;border-color:#344b40}
 html[data-senior="true"] .select-place{min-height:52px;font-size:18px}
}
@media screen and (max-width:760px){
 html[data-senior="true"] .day-nav{display:grid}
 html[data-senior="true"] .card-image-button{height:160px;min-height:160px;width:100%;flex-shrink:0}
 html[data-senior="true"] .card-image{position:static;height:160px;min-height:160px;width:100%;object-fit:cover}
 html[data-senior="true"] .card-body{overflow-wrap:anywhere}
 html[data-senior="true"] .activity-row{grid-template-columns:1fr}
 html[data-senior="true"] .activity-image{height:150px}
}
@media screen{
 html[data-senior="true"] .contact-phone{white-space:normal;overflow-wrap:anywhere}
 html[data-senior="true"] .place-grid:not(.list-view){grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media screen and (max-width:760px){
 html[data-senior="true"] .place-grid:not(.list-view){grid-template-columns:1fr}
 html[data-senior="true"] .place-text-cover{height:160px;min-height:160px}
}
@media screen{
 html[data-senior="true"] .skip{top:0;transform:translateY(-150%);max-width:calc(100% - 24px)}
 html[data-senior="true"] .skip:focus{top:10px;transform:none}
}

/* A complete top menu on phones and tablets, independent of the reading mode.
   Keep it above Safari's bottom toolbar and available even before JS starts. */
@media screen and (min-width:1101px){
 html:not([data-senior="true"]) .senior-nav{display:none}
}
@media screen and (max-width:1100px){
 html:not([data-senior="true"]){scroll-padding-top:var(--senior-offset,180px)}
 html:not([data-senior="true"]) .site-header{position:static}
 html:not([data-senior="true"]) .site-header>nav{display:none}
 html:not([data-senior="true"]) .senior-panel{position:sticky;top:0;z-index:18;background:#f4f4e9;padding:8px 12px;border-bottom:2px solid #344b40;box-shadow:0 3px 8px #263d331a}
 html:not([data-senior="true"]) .senior-controls{flex-wrap:nowrap;gap:8px}
 html:not([data-senior="true"]) #seniorHint{display:none}
 html:not([data-senior="true"]) #seniorToggle{font-size:14px;padding:6px 10px;white-space:nowrap}
 html:not([data-senior="true"]) #seniorTop{font-size:14px;white-space:nowrap}
 html:not([data-senior="true"]) .senior-nav:not([hidden]){display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:6px 0 0}
 html:not([data-senior="true"]) .senior-nav a{min-height:48px;padding:6px 4px;border-width:1px;font-size:15px;line-height:1.25}
 html:not([data-senior="true"]) :is(section[id],.consular-intro,#airportContacts,.booking-taxi-help){scroll-margin-top:0}
 html[data-navigation-ready="true"] .mobile-nav{display:none}
 html[data-navigation-ready="true"] .site-footer{padding-bottom:24px}
 .senior-panel{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
 .senior-nav a:focus-visible{outline:3px solid #b25c17;outline-offset:2px}
}
@media screen and (max-width:600px){
 html:not([data-senior="true"]) .senior-nav:not([hidden]){grid-template-columns:repeat(3,minmax(0,1fr))}
}
