/* Heart Greece content styles, moved verbatim out of the one page index.html on 1 October 2026.
   The section chrome lives in chrome.css. */
:root{--blue:#0B6E99;--dk:#095a7f;--ink:#0b2e4a;--wash:#f4f9fc;--line:#d7e7f0;}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);line-height:1.6;}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.2;}
a{color:var(--blue);}
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 22px;background:rgba(255,255,255,.96);border-bottom:3px solid var(--blue);}
.brand{font-family:Georgia,serif;font-weight:bold;font-size:22px;color:var(--blue);text-decoration:none;}
.navlinks{display:flex;gap:18px;flex-wrap:wrap;font-size:15px;}
.navlinks a{color:var(--ink);text-decoration:none;}
.navlinks a:hover{color:var(--blue);}
.hero{background:linear-gradient(135deg,#0B6E99,#0b2e4a);color:#fff;text-align:center;padding:110px 20px;}
.hero .kicker{letter-spacing:2px;text-transform:uppercase;font-size:13px;opacity:.85;font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;}
.hero h1{font-size:44px;margin:10px 0 14px;}
.hero p{max-width:680px;margin:0 auto 26px;font-size:19px;opacity:.95;}
.btn{display:inline-block;background:var(--blue);color:#fff;font-weight:bold;padding:13px 28px;border-radius:6px;text-decoration:none;border:none;cursor:pointer;}
.btn:hover{background:var(--dk);}
.btn.light{background:#fff;color:var(--blue);}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px;}
section{padding:54px 0;}
.alt{background:var(--wash);}
section h2{font-size:30px;color:var(--blue);margin:0 0 8px;text-align:center;}
.intro{max-width:720px;margin:0 auto 30px;text-align:center;}
.grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));}
.card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 2px 8px rgba(11,46,74,.05);transition:transform .15s,box-shadow .15s;display:flex;flex-direction:column;}
.card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(11,46,74,.12);}
.card .ph{height:120px;background:linear-gradient(135deg,#0B6E99,#5bb0cf);overflow:hidden;}
.card .ph img{width:100%;height:100%;object-fit:cover;display:block;}
.card .body{padding:16px;flex:1;display:flex;flex-direction:column;}
.card h3{font-size:17px;margin:0 0 6px;color:var(--blue);}
.card p{margin:0 0 12px;font-size:14.5px;flex:1;}
.card .btn{align-self:flex-start;font-size:13px;padding:8px 16px;}
.card .body{gap:6px;}
.card .btn.review{background:transparent;color:var(--blue);border:1px solid var(--line);padding:6px 12px;margin-top:6px;}
.recipe{background:var(--wash);border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin:2px 0 10px;font-size:13.5px;}
.recipe h4{margin:0 0 6px;font-size:13.5px;color:var(--dk);text-transform:uppercase;letter-spacing:.4px;}
.recipe dl{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;margin:0 0 8px;font-size:13px;}
.recipe dl dt{font-weight:bold;color:var(--ink);}
.recipe dl dd{margin:0;}
.recipe ul,.recipe ol{margin:0 0 0 18px;padding:0;font-size:13px;}
.recipe ul li,.recipe ol li{margin:0 0 4px;}
.personal-pick{background:#fff9e6;border:1px solid #ffe9a8;border-radius:8px;padding:10px 12px;margin:8px 0 0;font-size:13.5px;}
.card .btn.review:hover{background:var(--wash);}
.welcome{text-align:center;font-size:18px;max-width:760px;margin:0 auto;}
.book-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:6px;}
.note{background:#EAF4F9;border:1px solid var(--line);border-radius:8px;padding:14px 18px;max-width:760px;margin:22px auto 0;font-size:14.5px;}
.signup form{display:flex;gap:10px;max-width:460px;margin:16px auto 0;flex-wrap:wrap;justify-content:center;}
.signup input{flex:1;min-width:220px;padding:12px 14px;border:1px solid var(--line);border-radius:6px;font-size:15px;}
footer{background:#0b2e4a;color:#cfe3ef;text-align:center;padding:30px 20px;font-size:14px;}
footer a{color:#fff;}
@media(max-width:600px){.hero h1{font-size:32px;}.navlinks{font-size:14px;gap:12px;}}
.azwrap{max-width:940px;margin:0 auto;}.azbar{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:0 auto 26px;max-width:820px;}.azbar a{min-width:30px;text-align:center;padding:6px 9px;border:1px solid var(--line);border-radius:6px;color:var(--blue);text-decoration:none;font-weight:bold;font-size:14px;background:#fff;}.azbar a:hover{background:var(--blue);color:#fff;}.azbar span{min-width:30px;text-align:center;padding:6px 9px;border:1px solid var(--line);border-radius:6px;color:#9bb7c6;font-size:14px;background:var(--wash);}.azletter{font-family:Georgia,serif;color:var(--blue);font-size:26px;border-bottom:2px solid var(--line);padding-bottom:4px;margin:26px 0 10px;scroll-margin-top:70px;}.azitem{padding:10px 0;border-bottom:1px solid #eef4f8;}.azitem h3{display:inline;font-size:16px;color:var(--ink);margin:0;font-family:Georgia,serif;}.azitem .chip{display:inline-block;font-size:10.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--blue);background:var(--wash);border:1px solid var(--line);border-radius:20px;padding:2px 9px;margin-left:8px;vertical-align:middle;}.azitem p{margin:5px 0 0;font-size:14.5px;}.toplink{display:inline-block;margin-top:14px;font-size:13px;color:var(--blue);text-decoration:none;font-weight:bold;}.azsource{background:#EAF4F9;border:1px solid var(--line);border-radius:8px;padding:14px 18px;max-width:820px;margin:26px auto 0;font-size:13.5px;}
.azsearch{max-width:820px;margin:0 auto 18px;}
.azsearch input{width:100%;box-sizing:border-box;padding:12px 14px;font-size:16px;border:1px solid var(--line);border-radius:8px;font-family:inherit;color:var(--ink);}
.azsearch input:focus{outline:2px solid var(--blue);outline-offset:1px;}
.azfilters{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:12px auto 6px;max-width:820px;}
.azfilters button{cursor:pointer;font-family:inherit;font-size:13px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--blue);font-weight:600;}
.azfilters button[aria-pressed="true"]{background:var(--blue);color:#fff;border-color:var(--blue);}
.azcount{text-align:center;color:#5b7483;font-size:13.5px;margin:0 auto 20px;}
.azbar a.azoff{opacity:.28;pointer-events:none;}
.aznores{text-align:center;color:#5b7483;padding:26px 0;display:none;}
#toTop{position:fixed;right:18px;bottom:18px;z-index:60;display:none;width:44px;height:44px;border-radius:50%;border:none;background:var(--blue);color:#fff;font-size:20px;line-height:44px;text-align:center;cursor:pointer;box-shadow:0 3px 10px rgba(0,0,0,.25);}
#toTop:focus{outline:2px solid #fff;outline-offset:-4px;}
@media print{.azsearch,.azfilters,#toTop{display:none;}}.azperma{float:right;margin-top:-26px;color:#b9cbd6;text-decoration:none;font-weight:700;opacity:0;transition:opacity .15s;}.azitem:hover .azperma,.azperma:focus{opacity:1;color:var(--accent,#0D5EAF);}.azitem:target{background:#fff9e6;box-shadow:0 0 0 3px #ffe9a8;border-radius:8px;}@media print{.nav,.navlinks,.azbar,.aznores,#signup,#book,#business{display:none!important;}.azitem{page-break-inside:avoid;break-inside:avoid;}.azperma{display:none;}#az{background:#fff!important;}#az .azitem h3{font-size:13pt;}#az .azitem p{font-size:10.5pt;}}

/* Beating heart nav logo (lub-dub); holds still for reduced-motion */
@keyframes hb-beat{0%{transform:scale(1)}10%{transform:scale(1.06)}20%{transform:scale(1)}30%{transform:scale(1.04)}42%{transform:scale(1)}100%{transform:scale(1)}}
.brand svg{display:inline-block;transform-origin:center;animation:hb-beat 1s ease-in-out infinite;will-change:transform}
@media (prefers-reduced-motion:reduce){.brand svg{animation:none}}
.minilogo{display:block!important;margin:0 auto 14px!important;line-height:0;text-align:center}
.minilogo svg{display:inline-block!important;width:56px;height:56px;visibility:visible!important;opacity:1!important}
#hopper .h-lede{max-width:760px;margin:0 auto 22px;text-align:center;color:#0B6E99!important;font-size:19px;font-weight:700;line-height:1.55}
#hopper .h-points{max-width:760px;margin:0 auto 24px;padding:0;list-style:none;color:#095a7f!important;text-align:center;font-weight:500}
#hopper .h-points li{margin:6px 0;font-size:16px}
#hopper .h-cta{text-align:center}

#findmyway .mapwrap{max-width:960px;margin:0 auto}
#findmyway .searchrow{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:0 auto 14px;max-width:640px}
#findmyway .searchrow input{flex:1 1 260px;padding:11px 13px;border:1px solid var(--line);border-radius:8px;font-size:15px;font-family:inherit}
#findmyway .searchrow input:focus{outline:2px solid var(--blue);outline-offset:1px}
#findmyway #navmap{height:420px;border-radius:12px;border:1px solid var(--line);background:var(--wash);z-index:0}
#findmyway .navstatus{max-width:640px;margin:12px auto 0;text-align:center;color:var(--dk);font-size:15px;min-height:22px}
#findmyway .navresult{max-width:640px;margin:10px auto 0;text-align:center}
#findmyway .navresult .rname{color:#0B6E99;font-weight:600;font-size:17px;display:block;margin-bottom:2px}
#findmyway .navresult .rdist{color:var(--dk);font-size:15px}
#findmyway .navbtns{text-align:center;margin-top:14px}
#findmyway .navnote{max-width:640px;margin:16px auto 0;text-align:center;font-size:13px;color:#557589;line-height:1.5}
@media (max-width:600px){#findmyway #navmap{height:320px}}

@keyframes heartbeat{0%{transform:scale(1)}14%{transform:scale(1.06)}28%{transform:scale(1)}42%{transform:scale(1.05)}60%{transform:scale(1)}100%{transform:scale(1)}}
.heart-logo{transform-origin:center;animation:heartbeat 1s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.heart-logo{animation:none}}

.wsbanner{max-width:100%;height:auto;}
.evrow{display:grid;grid-template-columns:96px 1fr;gap:0;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden;margin-bottom:12px;box-shadow:0 2px 8px rgba(11,46,74,.05);transition:transform .15s,box-shadow .15s;}
.evrow:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(11,46,74,.12);}
.evdate{background:var(--blue);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 6px;text-align:center;}
.evdate .d{font-size:24px;font-weight:bold;line-height:1;}
.evdate .m{font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin-top:4px;}
.evdate .y{font-size:11px;opacity:.86;margin-top:2px;}
.evbody{padding:14px 18px;display:flex;flex-direction:column;gap:5px;}
.evbody h3{margin:0;font-size:17px;color:var(--blue);}
.evbody p{margin:0;font-size:14.5px;}
.evmeta{font-size:13px;color:#5a6b76;}
.evtags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;align-items:center;}
.evtag{font-size:11px;font-weight:bold;text-transform:uppercase;letter-spacing:.04em;padding:3px 9px;border-radius:20px;border:1px solid var(--line);color:#5a6b76;background:var(--wash);}
.evtag.ok{background:#E4F3E8;border-color:#B7DFC2;color:#1E7A3C;}
.evtag.ann{background:#FFF4E0;border-color:#F0D9A8;color:#8A6212;}
.evlinks{margin-top:8px;display:flex;flex-wrap:wrap;gap:8px;}
.evlinks a{font-size:13px;padding:7px 14px;}
.promo{background:linear-gradient(135deg,var(--blue),#5bb0cf);color:#fff;border-radius:12px;padding:30px 26px;margin-top:34px;}
.promo h3{margin:0 0 8px;font-size:23px;color:#fff;}
.promo>p{margin:0 auto 20px;max-width:640px;font-size:15px;opacity:.94;text-align:center;}
.promo .pgrid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));}
.pcard{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);border-radius:10px;padding:18px;display:flex;flex-direction:column;}
.pcard h4{margin:0 0 8px;font-size:16px;color:#fff;}
.pcard p{margin:0 0 14px;font-size:14px;flex:1;opacity:.94;}
.pcard .btn.light{align-self:flex-start;font-size:13px;padding:9px 18px;}
.promo .pnote{margin:18px 0 0;font-size:13px;opacity:.85;text-align:center;}
@media(max-width:560px){.evrow{grid-template-columns:70px 1fr;}.evdate .d{font-size:19px;}.evbody{padding:12px 14px;}}


.navlinks a.hopper{color:var(--blue);font-weight:bold;}
.navlinks a.hopper:hover{color:var(--dk);}

.flagword{display:inline-block;font-weight:900;letter-spacing:.04em;line-height:1;
 font-size:clamp(46px,11vw,104px);
 background-color:#0D5EAF;
 background-image:
   linear-gradient(#fff,#fff),
   linear-gradient(#fff,#fff),
   linear-gradient(#0D5EAF,#0D5EAF),
   repeating-linear-gradient(#0D5EAF 0 11.111%,#fff 11.111% 22.222%);
 background-repeat:no-repeat;
 background-size:.084em .42em, .42em .084em, .42em .42em, 100% 100%;
 background-position:.168em .02em, .02em .168em, .02em .02em, 0 0;
 -webkit-background-clip:text;background-clip:text;
 color:transparent;-webkit-text-fill-color:transparent;
 filter:drop-shadow(0 2px 6px rgba(0,0,0,.4));}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){
 .flagword{background:none;color:#fff;-webkit-text-fill-color:#fff;}}
.wordmark{text-align:center;margin:0 0 6px;}
.wordmark .sub{display:block;font-size:clamp(20px,4.4vw,40px);font-weight:800;
 letter-spacing:.34em;color:#fff;margin-top:6px;text-indent:.34em;
 text-shadow:0 2px 8px rgba(0,0,0,.45);}

.contact-block{padding:38px 0 46px;border-top:1px solid var(--line);}
.contact-block h2{margin:0 0 6px;}
.contact-block .lede{margin:0 0 22px;font-size:1.05rem;color:#3d5c73;max-width:62ch;}
.cgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;}
.ccard{background:var(--wash);border:1px solid var(--line);border-radius:12px;padding:18px 18px 20px;}
.ccard h3{margin:0 0 8px;font-size:1.08rem;}
.ccard p{margin:0 0 14px;font-size:.95rem;}
.contact-block .cnote{margin:22px 0 0;font-size:.95rem;color:#3d5c73;
  background:var(--wash);border-left:4px solid var(--blue);border-radius:0 8px 8px 0;padding:14px 16px;}
img[data-failed="1"]{object-fit:contain;background:#e8eef3;}

.fnote{background:#EAF4F9;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:0 8px 8px 0;padding:12px 15px;margin:0 0 20px;font-size:14px;}
.fnote strong{color:var(--dk);}
.ftablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 22px;border:1px solid var(--line);border-radius:10px;background:#fff;}
table.ftable{border-collapse:collapse;width:100%;min-width:680px;font-size:13.5px;}
table.ftable caption{text-align:left;padding:12px 14px 10px;font-weight:bold;color:var(--dk);font-size:14.5px;}
table.ftable th,table.ftable td{border-top:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top;}
table.ftable thead th{background:var(--wash);color:var(--dk);border-top:none;font-size:12.5px;text-transform:uppercase;letter-spacing:.4px;}
table.ftable tbody tr:nth-child(even){background:#fafdff;}
table.ftable td a{word-break:break-word;}
tr.fgroup th{background:#e4f0f7;font-weight:bold;color:var(--dk);font-size:13px;}
.fsrc{font-size:12.5px;color:#4a6b7a;}
.ftag{display:inline-block;font-size:11px;font-weight:bold;text-transform:uppercase;letter-spacing:.4px;padding:2px 7px;border-radius:20px;white-space:nowrap;margin-right:4px;}
.ftag.yr{background:#e3f4e8;color:#1c6b34;border:1px solid #b9e3c6;}
.ftag.su{background:#fff3df;color:#8a5300;border:1px solid #ffd9a0;}
.ftag.nv{background:#f1f1f1;color:#5a5a5a;border:1px solid #ddd;}
.fsources{font-size:13px;background:var(--wash);border:1px solid var(--line);border-radius:8px;padding:12px 15px;margin:18px 0 0;}
.fsources h4{margin:0 0 6px;font-size:13px;color:var(--dk);text-transform:uppercase;letter-spacing:.4px;}
.fsources ul{margin:0 0 6px 18px;padding:0;}
.fsources li{margin:0 0 4px;}
.fsources p{margin:0;font-size:12.5px;color:#4a6b7a;}
.fsub{font-size:20px;color:var(--dk);margin:26px 0 10px;font-family:Georgia,serif;}
@media(max-width:640px){table.ftable{font-size:12.5px;}}
.rvid{margin:14px 0 0;padding:12px 14px;background:#f4f7fa;border-left:4px solid #1a7fc1;border-radius:0 8px 8px 0}.rvid b{display:block;font-size:13px;margin-bottom:6px;color:#22303a}.rvid a{display:inline-block;margin:0 14px 0 0;font-size:14px}.rvid small{display:block;margin-top:6px;color:#5a6672;font-size:12px}
/* Recipes A to Z index - letter groups must never split across columns */
.rcount{font-size:13px;color:#54758b;margin:0 0 14px;}.rvenue{display:inline;font-weight:400;font-size:.88em;color:#54758b;font-style:italic;}
.rindex{column-count:3;column-gap:34px;}
@media(max-width:900px){.rindex{column-count:2;}}
@media(max-width:560px){.rindex{column-count:1;}}
.rgroup{display:inline-block;width:100%;break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid;margin:0 0 22px;}
.rletter{font-weight:bold;font-size:12px;letter-spacing:1.2px;color:var(--blue);border-bottom:2px solid var(--line);padding-bottom:4px;margin-bottom:7px;text-transform:uppercase;}
.rgroup a{display:block;padding:5px 0;font-size:14px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);}
.rgroup a:last-child{border-bottom:none;}
.rgroup a:hover{color:var(--blue);text-decoration:underline;}

.credit{font-size:11.5px;color:#5a7381;margin:6px 0 8px;font-style:italic;}

/* ------------------------------------------------------------------
   Missing component rules, added 30 August 2026.
   Every class below was already in the markup with no rule anywhere in
   this stylesheet, so it rendered with browser defaults only. Values are
   taken from this site's own existing rules and design tokens. Nothing
   was removed and no existing rule was edited.
   ------------------------------------------------------------------ */

/* Off canvas section menu. The MENU button, the scrim, the drawer and the
   open/close script were all on the page already. With no rule the drawer
   sat permanently expanded above the header and the button did nothing. */
.sidetoggle{position:fixed;left:18px;bottom:18px;z-index:70;border:none;cursor:pointer;
 background:var(--blue);color:#fff;font-family:inherit;font-size:12px;font-weight:bold;
 letter-spacing:.08em;padding:13px 17px;border-radius:24px;
 box-shadow:0 3px 10px rgba(0,0,0,.25);}
.sidetoggle:hover{background:var(--dk);}
.sidetoggle:focus{outline:2px solid #fff;outline-offset:-4px;}
.sidescrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:79;
 background:rgba(11,46,74,.45);opacity:0;visibility:hidden;transition:opacity .2s;}
.sidescrim.on{opacity:1;visibility:visible;}
.sidenav{position:fixed;top:0;left:0;z-index:80;width:290px;max-width:86vw;height:100%;
 overflow-y:auto;-webkit-overflow-scrolling:touch;background:#fff;
 border-right:3px solid var(--blue);box-shadow:4px 0 24px rgba(11,46,74,.18);
 visibility:hidden;transform:translateX(-100%);
 transition:transform .22s ease,visibility 0s linear .22s;}
.sidenav.open{visibility:visible;transform:translateX(0);
 transition:transform .22s ease,visibility 0s;}
.sidehead{display:flex;align-items:center;justify-content:space-between;gap:10px;
 padding:14px 16px;border-bottom:3px solid var(--blue);
 font-family:Georgia,serif;font-weight:bold;font-size:19px;color:var(--blue);}
.sideclose{border:none;background:none;cursor:pointer;color:var(--blue);
 font-size:26px;line-height:1;padding:0 4px;font-family:inherit;}
.sideclose:hover{color:var(--dk);}
.sidegroup{padding:12px 10px 8px;border-bottom:1px solid var(--line);}
.sidegroup:last-child{border-bottom:none;padding-bottom:24px;}
.sidegroup h4{margin:0 0 6px;padding:0 8px;
 font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:11px;font-weight:bold;
 text-transform:uppercase;letter-spacing:1px;color:#5b7483;}
.sidenav a{display:flex;align-items:center;gap:9px;padding:8px;border-radius:6px;
 color:var(--ink);text-decoration:none;font-size:14.5px;}
.sidenav a:hover{background:var(--wash);color:var(--blue);}
.sidenav a.here{background:var(--wash);color:var(--blue);font-weight:bold;
 box-shadow:inset 3px 0 0 var(--blue);}
.sidenav .ico{flex:none;color:var(--blue);}
@media (prefers-reduced-motion:reduce){.sidenav,.sidescrim{transition:none;}}
@media print{.sidetoggle,.sidescrim,.sidenav{display:none!important;}}

/* For Expats and Newcomers, Apps Worth Having, Free Things to Do.
   Three card grids that had no grid rule and no card rule. */
.xcat{font-size:20px;color:var(--dk);margin:26px 0 10px;font-family:Georgia,serif;
 line-height:1.2;}
.xgrid,.appgrid,.freegrid{display:grid;gap:18px;
 grid-template-columns:repeat(auto-fill,minmax(240px,1fr));}
.xcard,.appcard,.freecard{background:#fff;border:1px solid var(--line);border-radius:10px;
 padding:16px;box-shadow:0 2px 8px rgba(11,46,74,.05);
 transition:transform .15s,box-shadow .15s;display:flex;flex-direction:column;}
.xcard:hover,.appcard:hover,.freecard:hover{transform:translateY(-3px);
 box-shadow:0 8px 20px rgba(11,46,74,.12);}
.xcard h4,.appcard h4{margin:0 0 8px;font-size:16px;color:var(--blue);
 font-family:Georgia,serif;line-height:1.25;}
.freecard h3{margin:0 0 8px;font-size:17px;color:var(--blue);}
.xcard p,.appcard p,.freecard p{margin:0 0 12px;font-size:14.5px;flex:1;}
.xcard .btn,.appcard .btn,.freecard .btn{align-self:flex-start;font-size:13px;padding:8px 16px;}
.freebadge{align-self:flex-start;display:inline-block;font-size:11px;font-weight:bold;
 text-transform:uppercase;letter-spacing:.4px;padding:3px 9px;border-radius:20px;
 background:#e3f4e8;color:#1c6b34;border:1px solid #b9e3c6;margin:0 0 8px;}

/* What's On. Each category group had no spacing rule of its own. */
.wsgroup{margin:0 0 34px;}
.wsgroup h3{display:flex;align-items:center;gap:8px;margin:0 0 6px;
 font-size:20px;color:var(--blue);}
.wsgroup>p{margin:0 0 14px;font-size:14.5px;color:#4a6b7a;max-width:760px;}

/* The three column contact band that sits above the footer. */
.footcontact{background:var(--wash);border-top:1px solid var(--line);padding:30px 0 34px;}
.fcwrap{max-width:1080px;margin:0 auto;padding:0 20px;display:grid;gap:18px;
 grid-template-columns:repeat(auto-fit,minmax(240px,1fr));}
.footcontact h4{margin:0 0 6px;font-family:Georgia,serif;font-size:16px;color:var(--blue);}
.footcontact p{margin:0;font-size:14.5px;}

/* Arriving at a recipe by permalink. The script adds .rflash and there was
   nothing to show. Colours copied from the site's own .azitem:target rule. */
@keyframes rflash{0%{background:#fff9e6;box-shadow:0 0 0 3px #ffe9a8;}
 70%{background:#fff9e6;box-shadow:0 0 0 3px #ffe9a8;}
 100%{background:var(--wash);box-shadow:none;}}
.recipe.rflash{animation:rflash 1.8s ease-out 1;}
@media (prefers-reduced-motion:reduce){.recipe.rflash{animation:none;background:#fff9e6;}}

/* A photograph inside a card body, with no width limit of its own. */
.evphoto{display:block;width:100%;height:auto;border-radius:8px;margin:0 0 10px;}

/* ------------------------------------------------------------------
   Keyboard and screen reader pass, added 30 August 2026.
   The page had no main landmark and no way to bypass the header, so a
   keyboard user tabbed through every navigation link before reaching
   the content. Values below are copied from this site's own existing
   rules: padding from .nav, colour and shadow from #toTop, focus
   outline from the existing :focus rule, font size from .navlinks,
   radius from .azitem:target, and the scroll offset from the site's own
   section{padding:54px 0}. Nothing was removed and no existing rule was
   edited.
   ------------------------------------------------------------------ */
main{display:block;}
#main{scroll-margin-top:54px;}
.skiplink{position:absolute;left:-9999px;top:0;z-index:90;
 display:inline-block;padding:12px 22px;
 background:var(--blue);color:#fff;
 font-weight:bold;font-size:15px;text-decoration:none;
 border-bottom-right-radius:8px;
 box-shadow:0 3px 10px rgba(0,0,0,.25);}
.skiplink:focus{left:0;outline:2px solid #fff;outline-offset:-4px;}
@media print{.skiplink{display:none;}}

/* ------------------------------------------------------------------
   Focus visibility pass, added 30 August 2026.
   Run 47 gave every page a main landmark and a way to bypass the header.
   This run answers the next question: once a keyboard user is moving,
   can they see where they are. Only five selectors on this page carried
   a focus style and nothing used :focus-visible, so almost every link,
   button and disclosure fell back to whatever ring the browser chose.
   Nothing below removes or edits an existing rule. Every value is taken
   from this site's own sheet: 2px solid var(--blue) with
   outline-offset:1px from .azsearch input:focus, and 2px solid #fff at
   an inset offset from #toTop:focus, .sidetoggle:focus and
   .skiplink:focus. The five existing :focus rules all outrank these on
   specificity, so they keep working exactly as before. A browser with no
   :focus-visible support drops these rules and keeps its default ring,
   which is today's behaviour.
   Solid blue buttons take the white ring inset, because an outside ring
   in the same blue would sit on the white card and read as a fatter
   button. White buttons take the blue ring inset for the mirror reason.
   ------------------------------------------------------------------ */
a:focus-visible,button:focus-visible,summary:focus-visible,
input:focus-visible,select:focus-visible,textarea:focus-visible,
[tabindex]:focus-visible{outline:2px solid var(--blue);outline-offset:1px}
.btn:focus-visible{outline:2px solid #fff;outline-offset:-4px}
.btn.light:focus-visible{outline:2px solid var(--blue);outline-offset:-4px}
.btn.review:focus-visible{outline:2px solid var(--blue);outline-offset:1px}

.xmeta{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;margin:0 0 8px;font-size:13px;flex:0 0 auto;}
.xprice{font-weight:bold;color:var(--blue);background:var(--wash);border:1px solid var(--line);border-radius:6px;padding:3px 9px;white-space:nowrap;}
.xprice.free{background:#E4F3E8;border-color:#B7DFC2;color:#1E7A3C;}
.xdur{color:#4a6b7a;white-space:nowrap;}
.xtags{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 10px;flex:0 0 auto;}
.chip.occ{margin:0;cursor:default;}
.tmmonth{color:#4a6b7a;font-weight:normal;}
.xlink.xwo{display:inline;margin-top:0;font-weight:normal;}
.xnote{font-size:12.5px;color:#4a6b7a;text-align:center;margin:18px auto 0;max-width:820px;}
.xlink{display:inline-block;font-size:13px;font-weight:bold;color:var(--blue);text-decoration:underline;margin-top:6px;}
.tm{border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:10px;background:#fff;padding:18px 20px;margin:0 0 30px;box-shadow:0 2px 8px rgba(11,46,74,.05);}
.tm h3{margin:0 0 4px;font-size:20px;color:var(--blue);}
.tm>p{margin:0 0 14px;font-size:14.5px;color:#4a6b7a;}
.tmlist{display:flex;flex-direction:column;gap:8px;}
.tmrow{display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:baseline;padding:8px 0;border-top:1px solid var(--line);}
.tmrow:first-child{border-top:none;}
.tmd{font-weight:bold;color:var(--blue);font-size:13px;letter-spacing:.03em;text-transform:uppercase;}
.tmt{font-size:14.5px;}
.tmt a{color:var(--blue);}
.tmnone{font-size:14.5px;color:#4a6b7a;margin:0;}
@media(max-width:640px){.tmrow{grid-template-columns:56px 1fr;gap:8px;}}

.rgrid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:0 0 22px;}
.rcard{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px;box-shadow:0 2px 8px rgba(11,46,74,.05);display:flex;flex-direction:column;}
.rcard.feat{border:2px solid var(--blue);}
.rcard h3{margin:0 0 4px;font-size:18px;color:var(--blue);}
.rprice{font-size:26px;font-weight:bold;color:var(--blue);margin:6px 0 2px;}
.rprice small{font-size:13px;font-weight:normal;color:#4a6b7a;}
.rcard>p{font-size:14.5px;margin:8px 0 12px;flex:1;}
.rlist{list-style:none;padding:0;margin:0 0 14px;font-size:14px;}
.rlist li{padding:5px 0;border-top:1px solid var(--line);}
.rlist li:first-child{border-top:none;}
.rtag{display:inline-block;font-size:10.5px;letter-spacing:.6px;text-transform:uppercase;background:var(--wash);border:1px solid var(--line);border-radius:20px;padding:2px 9px;color:var(--blue);margin:0 0 8px;}
.rnote{font-size:13px;color:#4a6b7a;max-width:820px;margin:0 auto;text-align:center;}

/* Home page hero photo, 4 Oct 2026, the same pattern as Heart Athens: a light ink tint keeps the photo
   visible and a darker plate behind the words keeps every line at 7 to 1 or better against white, even
   over the brightest part of the picture. Photo: Sarakiniko Beach, Milos, by dronepicr, CC BY 2.0, via
   Wikimedia Commons (5,464 x 3,640 original), loaded from Commons at 1600 px, or 800 px on phones. */
.hero.hero-photo{position:relative;overflow:hidden;background-color:#0b2e4a;background-image:linear-gradient(180deg,rgba(11,46,74,.42) 0%,rgba(11,46,74,.38) 45%,rgba(11,46,74,.62) 100%),url("https://commons.wikimedia.org/wiki/Special:FilePath/Sarakiniko_Beach_on_Milos_Island,_Greece_with_a_view_of_the_Aegean_Sea.jpg?width=1600");background-size:cover;background-position:center 55%;background-repeat:no-repeat;padding:76px 20px 104px}
@media(max-width:700px){.hero.hero-photo{background-image:linear-gradient(180deg,rgba(11,46,74,.42) 0%,rgba(11,46,74,.38) 45%,rgba(11,46,74,.62) 100%),url("https://commons.wikimedia.org/wiki/Special:FilePath/Sarakiniko_Beach_on_Milos_Island,_Greece_with_a_view_of_the_Aegean_Sea.jpg?width=800");padding:44px 14px 92px}}
.hero-plate{display:inline-block;max-width:780px;background:rgba(11,46,74,.66);border-radius:14px;padding:22px 26px 26px;box-shadow:0 10px 34px rgba(0,0,0,.28)}
.hero-plate p{margin:0 auto 22px}
.hero>.hero-credit,.hg-photohead>.hg-phcredit{position:absolute;right:10px;bottom:8px;z-index:2;margin:0;max-width:94%;font-size:11.5px;line-height:1.35;font-style:italic;color:#e6eef3;background:rgba(0,0,0,.5);padding:3px 8px;border-radius:4px;text-align:right}
.hero>.hero-credit a,.hg-photohead>.hg-phcredit a{color:#fff}
@media(max-width:600px){.hero-plate{padding:16px 14px 20px}}
/* Landing page photo heads (Travel): the same tint, plate and credit. Photo: Old Venetian Harbour, Chania,
   by dronepicr, CC BY 2.0, via Wikimedia Commons (5,464 x 3,640 original). The section colour stays on the top rule. */
body.hg-site .hg-pagehead.hg-photohead{position:relative;max-width:none;margin:0;padding:64px 20px 72px;background-color:#0b2e4a;background-size:cover;background-position:center 50%;background-repeat:no-repeat;overflow:hidden}
.hg-ph-travel{background-image:linear-gradient(180deg,rgba(11,46,74,.42) 0%,rgba(11,46,74,.38) 45%,rgba(11,46,74,.62) 100%),url("https://commons.wikimedia.org/wiki/Special:FilePath/Aerial_view_of_the_Old_Venetian_Harbour_in_Chania,_Greece.jpg?width=1600")}
@media(max-width:700px){.hg-ph-travel{background-image:linear-gradient(180deg,rgba(11,46,74,.42) 0%,rgba(11,46,74,.38) 45%,rgba(11,46,74,.62) 100%),url("https://commons.wikimedia.org/wiki/Special:FilePath/Aerial_view_of_the_Old_Venetian_Harbour_in_Chania,_Greece.jpg?width=800")}body.hg-site .hg-pagehead.hg-photohead{padding:40px 12px 70px}}
.hg-phplate{display:inline-block;max-width:760px;background:rgba(11,46,74,.70);border-radius:12px;padding:18px 24px 12px;box-shadow:0 10px 30px rgba(0,0,0,.25);--sec:#FFFFFF}
body.hg-site .hg-pagehead.hg-photohead h1,body.hg-site .hg-pagehead.hg-photohead .hg-lede{color:#FFFFFF}
