/* Shared editorial polish: responsive, keyboard accessible and motion-aware. */
:root{--focus:#85601f}
html{scroll-padding-top:150px}body{overflow-wrap:break-word}img,video{max-width:100%}
a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:5px}
.skip-link{position:fixed;left:20px;top:-80px;z-index:9999;background:#fffdf9;color:#12110f;padding:12px 20px;border:2px solid #85601f;border-radius:8px}.skip-link:focus{top:12px}
.card,.guide-card,.dest-mini{border-radius:8px;isolation:isolate}.card img,.guide-card img,.dest-mini img{object-fit:cover}
.guide-card{min-height:340px}.guide-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.card:has(>img){overflow:hidden}.grid-3>a{min-width:0}.grid-3>a>.card{height:100%}
#destinations .card>img{width:100%;height:100%;position:absolute;inset:0}
#destinations .card{position:relative;min-height:420px}
.hero-pause{position:absolute;right:24px;bottom:20px;z-index:3;background:#12110fd9;border:1px solid #d9bc7b;color:#fffdf9;padding:11px 16px;border-radius:999px;cursor:pointer;font:12px Arial,sans-serif}
.hero-editorial{min-height:0!important;padding:65px max(5vw,20px)!important;background:#191812!important;color:#fffdf9}.hero-editorial .hero-inner{margin-bottom:0}.hero-editorial h1{font-size:clamp(36px,5vw,64px)!important;line-height:1.08}
.hero-editorial+.section{padding-top:50px}.hero-editorial~.section p{max-width:82ch;line-height:1.85}
.guide-next{max-width:1240px;margin:0 auto 60px;padding:24px 5vw;border-top:1px solid #d8c7a7;display:flex;justify-content:space-between;flex-wrap:wrap;gap:22px;font-size:14px;letter-spacing:0;text-transform:none}
.guide-next a:hover,.guide-legal a:hover,.photo-credit a:hover{text-decoration:underline;text-underline-offset:4px}
.guide-legal,.photo-credit{max-width:1240px;margin:24px auto 0;font-size:12px;line-height:1.7}.guide-legal{border-top:1px solid #ffffff26;padding-top:22px}.guide-legal>a{display:inline-block;margin:0 18px 8px 0}.guide-legal p{max-width:80ch;color:#c9c0b0}.photo-credit{color:#c9c0b0}
.panel,.card-copy{border-radius:8px}.section .grid-3>.card:not(:has(img)) .card-copy{padding:30px}.section .grid-3>.card:not(:has(img)){box-shadow:0 12px 30px #11100d08}
.language-menu,.gv-language-menu{z-index:100!important}.gv-language-button,.language-btn{min-height:44px}.gv-language-menu button,.language-menu button{min-height:44px}
header .nav .lang{overflow:visible!important}footer a{line-height:1.8}table{width:100%;border-collapse:collapse}td,th{overflow-wrap:anywhere;text-align:left}
@media(max-width:660px){html{scroll-padding-top:165px}.section{padding:55px 20px}.hero:not(.hero-editorial){min-height:480px;padding:64px 20px}.hero-inner{margin-bottom:20px}h1{font-size:clamp(40px,10.5vw,64px)!important;line-height:1.05!important}.hero p{font-size:17px}.card-copy h3{font-size:27px}.guide-grid{grid-template-columns:1fr 1fr;gap:12px}.guide-card{min-height:270px}.guide-copy{left:13px;right:13px;bottom:16px}.guide-copy h3{font-size:25px}.guide-copy span{font-size:13px;line-height:1.45;display:block}.guide-copy small{font-size:9px}.newsletter{margin-top:40px}.guide-next{margin-bottom:30px;flex-direction:column;align-items:flex-start}.guide-legal{padding-bottom:15px}.hero-editorial h1{font-size:38px!important}td,th{padding:12px 8px!important;font-size:13px}}
@media(max-width:359px){.guide-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{transition:none!important;animation:none!important}.hero-video{visibility:hidden}.hero{background:#11100d url('/assets/destinations/santorini.webp') center/cover!important}}
header .full-brand-logo{display:block;width:170px;height:66px;object-fit:contain;max-width:45vw}.brand{flex-shrink:0}.hero-img img{display:block;width:100%;max-height:620px;object-fit:cover}.hero-editorial a{text-decoration:underline}.photo-credit{font-size:11px}
@media(max-width:660px){header .full-brand-logo{width:140px;height:54px}.hero-img img{max-height:360px}.section .panel h3{line-height:1.2}}
.hero:has(.crumbs){min-height:0!important;padding:50px 5vw!important}.hero:has(.crumbs) h1{max-width:1000px}.hero:has(.crumbs) .deck{max-width:760px}
[data-language-fallback]{margin:0!important;max-width:none!important;border:0!important;border-bottom:1px solid #d8c7a7!important;border-radius:0!important;padding:10px 5vw!important;font-size:12px!important;line-height:1.5!important}

/* Booking links on destination guides */
.affiliate-slot{margin:30px 0;padding:20px 22px;background:#fffdf9;border:1px solid rgba(184,138,59,.35);border-radius:10px;box-shadow:0 16px 40px rgba(17,14,10,.08)}.affiliate-kicker{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#9b742f;margin-bottom:10px}.affiliate-row{display:flex;align-items:center;justify-content:space-between;gap:18px}.affiliate-row>div{min-width:0}.affiliate-row strong{font-size:18px}.affiliate-row span{color:#746d63}.affiliate-row small{display:block;margin-top:6px;color:#746d63;font-size:12px;line-height:1.5}.affiliate-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:999px;background:#12110f;color:#fffdf9;font-size:11px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.affiliate-button:hover{background:#85601f;color:white}@media(max-width:660px){.affiliate-row{align-items:stretch;flex-direction:column}.affiliate-button{width:100%}}
.planner-promo{max-width:1240px;margin:0 auto 56px;padding:0 5vw}.planner-promo-card{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:26px 30px;background:#f0e8da;border:1px solid rgba(184,138,59,.25);border-radius:10px}.planner-promo-copy small{display:block;color:#96702f;text-transform:uppercase;letter-spacing:.17em;font-size:10px;margin-bottom:7px}.planner-promo-copy strong{font:500 26px Georgia,serif;display:block}.planner-promo-copy span{display:block;color:#746d63;font-size:13px;margin-top:6px}.planner-promo-link{background:#171511;color:#fffdf9;border-radius:999px;padding:14px 20px;font-size:11px;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap}.planner-promo-link:hover{background:#85601f}
@media(max-width:660px){.planner-promo-card{align-items:flex-start;flex-direction:column}.planner-promo-link{width:100%;text-align:center}}

/* Clear keyboard navigation and comfortable mobile controls. */
a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid #99702b;outline-offset:4px}header nav a{padding-block:10px} .panel h3{line-height:1.2} .panel p{overflow-wrap:anywhere}

/* iPhone header: compact controls and a complete, readable disclosure menu. */
.gv-menu-toggle{display:none}
@media(max-width:980px){
 html{scroll-padding-top:90px}
 body>header{position:sticky;top:0;z-index:100}
 .topbar{font-size:9px!important;letter-spacing:.09em!important;padding:6px 12px!important}
 header.gv-mobile-ready .nav{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;padding:8px 14px!important;min-height:62px!important;flex-wrap:wrap!important}
 header.gv-mobile-ready .brand{gap:6px!important;margin-right:auto;min-width:0}
 header.gv-mobile-ready .brand-name{font-size:21px!important;letter-spacing:0!important;white-space:nowrap}
 header.gv-mobile-ready .brand-mark{width:28px!important;height:28px!important;font-size:20px!important;flex:none}
 header.gv-mobile-ready .full-brand-logo{width:124px!important;height:44px!important;max-width:none!important}
 header.gv-mobile-ready .lang,header.gv-mobile-ready .language-wrap{margin:0!important;padding:0!important;border:0!important;max-width:none!important;overflow:visible!important;font-size:12px!important;letter-spacing:0!important}
 header.gv-mobile-ready .gv-language-button,header.gv-mobile-ready .language-btn{min-height:44px!important;padding:8px!important;font-size:12px!important;letter-spacing:0!important;border:1px solid #d8c7a7!important;max-width:105px}
 header.gv-mobile-ready .gv-menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;border:1px solid #d8c7a7;border-radius:999px;background:#fffdf9;color:#12110f;font:13px Arial,sans-serif;white-space:nowrap;order:2;cursor:pointer}
 header.gv-mobile-ready .nav nav,header.gv-mobile-ready .nav .navlinks{display:none!important}
 header.gv-mobile-ready.gv-menu-open .nav nav,header.gv-mobile-ready.gv-menu-open .nav .navlinks{display:flex!important;flex-direction:column!important;flex:0 0 100%!important;order:3!important;gap:0!important;white-space:normal!important;overflow-x:hidden!important;overflow-y:auto!important;max-height:65vh;max-height:65dvh;align-items:stretch!important;padding:8px 0!important;border-top:1px solid #d8c7a7}
 header.gv-mobile-ready .nav nav a,header.gv-mobile-ready .nav .navlinks a{display:flex!important;align-items:center;min-height:44px;padding:10px 8px!important;font-size:13px!important;line-height:1.4!important;letter-spacing:.06em!important;border-bottom:1px solid #d8c7a740}
 header.gv-mobile-ready .planner-home{display:none}
 footer{padding:38px 20px 24px!important}
 footer .footer-brand{font-size:30px!important}
 footer .footer-links{display:flex!important;justify-content:flex-start!important;gap:8px 18px!important}
 footer .footer-links a{font-size:14px;min-height:40px;display:inline-flex;align-items:center}
 footer .footer-legal{margin-top:20px!important;font-size:11px!important}
}
@media(max-width:360px){header.gv-mobile-ready .brand-name{font-size:18px!important}header.gv-mobile-ready .brand-mark{display:none!important}header.gv-mobile-ready .nav{padding-inline:10px!important;gap:6px!important}header.gv-mobile-ready .full-brand-logo{width:106px!important}}
