/* Compact, photo-led extension: inherited V21.7 cards and details unchanged */
.pt-experiences,.pt-inspire{padding:48px 0;background:#f8f5ee}
.pt-inspire{background:#eef4ed}
.pt-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.pt-route-card{padding:20px;background:white;border:1px solid #e9dcc9;border-radius:16px;box-shadow:0 5px 24px #183b330a}
.pt-route-icon{font-size:24px;color:#ed1680;margin-bottom:8px}
.pt-route-card h3{font-family:Georgia,serif;font-size:21px;color:#183b33;font-weight:400;margin:0 0 13px}
.pt-route-stops{display:flex;flex-wrap:wrap;gap:6px}
.pt-route-stops button,.pt-idea-choice{border:1px solid #e9dcc9;background:#fff;border-radius:9px;padding:7px 10px;font-size:12px;color:#183b33;cursor:pointer;text-align:left}
.pt-route-stops button:hover,.pt-idea-choice[aria-pressed="true"]{border-color:#ed1680;color:#ed1680}
.pt-route-card p{color:#69786d;font-size:12px;line-height:1.55;margin:14px 0 0}
.pt-inspire-box{background:#fff;border:1px solid #d8e4d7;border-radius:18px;padding:18px;margin-top:17px}
.pt-inspire-choices{display:flex;flex-wrap:wrap;gap:9px}
.pt-inspire-result{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:19px}
.pt-inspire-result>span,.pt-inspire-result>small{color:#68786d;font-size:12px}
.pt-inspire-result>strong{font-family:Georgia,serif;font-size:19px;color:#183b33;font-weight:400}
.pt-inspire-result .btn{margin-left:auto}
.pt-nav-text{font-size:12px;text-decoration:none;color:#183b33;font-weight:600;padding:7px 3px}
@media(max-width:680px){.pt-route-grid{grid-template-columns:1fr}.pt-route-card{padding:15px}.pt-experiences,.pt-inspire{padding:30px 0}.pt-nav-text{display:none}.pt-inspire-result .btn{margin-left:0}}
/* Avoid visibly enlarging very low resolution source photos beyond their pixels on wide screens */
.pt-detail-hero img{object-fit:contain}

/* V21.7.2 validated compact navigation and richer excursions */
.pt-quick-nav{position:sticky;top:65px;z-index:24;background:#fffdf9;border-bottom:1px solid #eee2d7}
.pt-quick-scroll{max-width:1166px;margin:auto;display:flex;gap:8px;padding:9px 23px;overflow-x:auto;scrollbar-width:none}
.pt-quick-scroll::-webkit-scrollbar{display:none}
.pt-quick-scroll a{font-size:12px;color:#183b33;font-weight:700;border:1px solid #e9dcc9;background:#fff;border-radius:20px;white-space:nowrap;padding:7px 13px}
.pt-quick-scroll a:focus-visible,.pt-quick-scroll a:hover{border-color:#ed1680;color:#ab0d5d}
#explorer,#circuits,#inspiration,#manger,#contact-guide{scroll-margin-top:145px}
.pt-route-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}
.pt-route-icon{display:inline-flex;align-items:center;justify-content:center;width:37px;height:37px;border-radius:10px;background:#fff0f7;color:#ed1680;margin:0}
.pt-route-icon svg{width:23px;height:23px}
.pt-route-number{font:700 12px Arial;color:#a87f96}
.pt-route-caption{font:700 11px Arial;color:#526559;letter-spacing:.02em}
.pt-route-intro{font-size:13px!important;line-height:1.6!important;margin-bottom:14px!important}
.pt-route-steps{margin:8px 0 13px;padding-left:22px;display:grid;gap:6px}
.pt-route-steps li{color:#ed1680;padding-left:3px}
.pt-route-steps button{border:0;padding:2px 0;background:transparent;color:#183b33;font-size:13px;text-align:left;font-weight:600;text-decoration:underline;text-decoration-color:#dfd6c8;text-underline-offset:3px}
.pt-route-steps span{color:#ed1680}
.pt-route-advice{border-left:3px solid #ed1680;padding:9px 11px;background:#f8f5ee;border-radius:4px;font-size:12px!important}
.pt-route-note{font-size:10px!important}
.pt-inspire-box{padding:18px}
.pt-inspire-picked{display:grid;grid-template-columns:minmax(0,200px) 1fr;border:1px solid #e9dcc9;border-radius:14px;overflow:hidden;margin-top:18px;background:#fff}
.pt-inspire-photo{position:relative;min-height:165px;background:#edf4ee}
.pt-inspire-photo img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}
.pt-inspire-photo>span{display:none}.pt-photo-unavailable>span{display:block;padding:20px;color:#607168}
.pt-inspire-copy{padding:14px;min-width:0}
.pt-inspire-copy small{color:#65776b;display:block;font-size:11px;margin-bottom:3px}
.pt-inspire-copy strong{font:23px Georgia,serif;color:#183b33;display:block}
.pt-inspire-copy p{color:#607168;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:12px;line-height:1.5}
.pt-inspire-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.pt-inspire-empty{display:flex;gap:12px;align-items:center;justify-content:space-between;width:100%}
.pt-inspire-empty p{font-size:13px;color:#65776b}
.dining-photo{height:240px;background:#f5e5cb}
.dining-photo img{object-fit:contain;padding:7px}
.pt-dining-symbol{background:#f9e8f0;border-radius:14px;width:61px;height:61px;display:flex;align-items:center;justify-content:center;color:#ed1680;margin-bottom:15px}
.pt-dining-symbol svg{width:34px;height:34px}
@media(max-width:680px){.pt-quick-nav{top:58px}.pt-quick-scroll{padding:7px 12px}.pt-inspire-picked{grid-template-columns:1fr}.pt-inspire-photo{min-height:190px}.pt-inspire-empty{align-items:flex-start;flex-direction:column}.pt-route-card{padding:16px}#explorer,#circuits,#inspiration,#manger,#contact-guide{scroll-margin-top:117px}}

/* Menu rapide sous le bandeau d’accueil, 4 liens uniquement. */
.pt-quick-nav{top:0}
.pt-quick-scroll{justify-content:center}
@media(max-width:680px){.pt-quick-nav{top:0}.pt-quick-scroll{justify-content:flex-start}}

/* V21.7.5: scoped to route cards only. */
.pt-route-step-line{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;flex-wrap:wrap;color:#183b33;font-size:13px;line-height:1.45}
.pt-route-step-actions{display:inline-flex;gap:5px;flex-wrap:wrap;align-items:center}
.pt-route-steps .pt-route-step-actions button,.pt-route-steps .pt-route-step-actions a{border:1px solid #e9dcc9;background:#f8f5ee;border-radius:7px;text-decoration:none;color:#183b33;font:600 11px Arial,sans-serif;padding:5px 8px;cursor:pointer;white-space:nowrap}
.pt-route-steps .pt-route-step-actions button:hover,.pt-route-steps .pt-route-step-actions a:hover{border-color:#ed1680;color:#ed1680}

/* V21.7.6 : small pictogram-only circuit action controls. */
.pt-route-steps .pt-route-step-actions button,.pt-route-steps .pt-route-step-actions a{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;flex:0 0 30px;border-radius:8px}
.pt-route-steps .pt-route-step-actions svg{display:block;width:16px;height:16px;flex:none}

/* V21.8.7: discrete dining links within existing circuit cards only */
.pt-route-food{margin:14px 0 10px;padding:12px 13px;border:1px solid #e9dcc9;border-radius:13px;background:#f8f5ee}
.pt-route-food-title{display:flex;align-items:center;gap:7px;font-weight:650;font-size:.88rem;color:#183b33;margin-bottom:10px}
.pt-route-food-title svg{width:18px;height:18px;flex:none;color:#159cb1}
.pt-route-food-list{display:flex;flex-wrap:wrap;gap:7px}
.pt-route-food-link{appearance:none;display:inline-flex;align-items:center;gap:7px;text-align:left;cursor:pointer;border:1px solid #d9dfd9;background:#fff;color:#183b33;font:inherit;font-size:.8rem;line-height:1.25;border-radius:9px;padding:7px 9px;max-width:100%}
.pt-route-food-link svg{width:15px;height:15px;flex:none;color:#159cb1}
.pt-route-food-link:hover,.pt-route-food-link:focus-visible{border-color:#159cb1;outline-offset:2px}
.pt-route-food small{display:block;margin-top:9px;color:#556760;font-size:.72rem}

/* V21.8.8: visual pilot exclusively on the Les Saintes route. */
.pt-route-card--saintes .pt-route-steps{list-style:none;counter-reset:saintesstep;padding:0;margin:20px 0 16px}
.pt-route-card--saintes .pt-route-steps>li{counter-increment:saintesstep;position:relative;padding:12px 0 12px 40px;margin:0;border-bottom:1px solid rgba(24,59,51,.12);min-width:0}
.pt-route-card--saintes .pt-route-steps>li:last-child{border-bottom:0}
.pt-route-card--saintes .pt-route-steps>li::before{content:counter(saintesstep,decimal-leading-zero);position:absolute;left:0;top:13px;font-size:13px;font-weight:700;color:#ED1680}
.pt-route-card--saintes .pt-route-step-line{display:flex;gap:10px;align-items:center;justify-content:space-between;min-width:0;flex-wrap:nowrap}
.pt-route-card--saintes .pt-route-step-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.pt-route-card--saintes .pt-route-step-copy strong{font-size:15px;line-height:1.4;font-weight:650;color:#183B33}
.pt-route-card--saintes .pt-route-step-copy small{font-size:12px;line-height:1.35;color:#68786f}
.pt-route-card--saintes .pt-route-step-actions{display:flex;flex-shrink:0;gap:6px;margin:0;align-items:center}
.pt-route-card--saintes .pt-route-step-actions button,.pt-route-card--saintes .pt-route-step-actions a{width:32px;height:32px;min-width:32px;display:inline-flex;align-items:center;justify-content:center;padding:6px;border-radius:10px;border:1px solid #e9dcc9;background:#f8f5ee;color:#183B33}
.pt-route-card--saintes .pt-route-step-actions svg{width:17px;height:17px}
.pt-route-card--saintes .pt-route-beach-options{padding-top:10px;display:grid;gap:6px}
.pt-route-card--saintes .pt-route-beach-option{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;border:1px solid rgba(24,59,51,.13);border-radius:10px;background:#fff;font-size:13px;color:#183B33}
.pt-route-card--saintes .pt-route-food--saintes{padding:13px 15px;border-radius:14px}
.pt-route-card--saintes .pt-route-food--saintes .pt-route-food-title{font-size:15px;margin-bottom:9px}
.pt-route-card--saintes .pt-route-food--saintes .pt-route-food-list{display:grid;gap:0}
.pt-route-card--saintes .pt-route-food--saintes .pt-route-food-link{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:9px 0;background:transparent;border:0;border-radius:0;text-align:left;box-shadow:none}
.pt-route-card--saintes .pt-route-food--saintes .pt-route-food-link+.pt-route-food-link{border-top:1px solid rgba(24,59,51,.12)}
.pt-route-card--saintes .pt-route-food--saintes .pt-route-food-link span{display:grid;gap:3px;min-width:0}
.pt-route-card--saintes .pt-route-food--saintes .pt-route-food-link strong{font-size:13px;font-weight:650;color:#183B33}
.pt-route-card--saintes .pt-route-food--saintes .pt-route-food-link small{font-size:11px;color:#68786f}
.pt-route-card--saintes .pt-route-food--saintes .pt-route-food-link svg{width:18px;height:18px;flex:none;color:#159cb1}
.pt-route-card--saintes .pt-route-advice{font-size:13px;line-height:1.55}
@media(min-width:640px){.pt-route-card--saintes .pt-route-step-copy strong{font-size:16px}}

/* V21.8.10: mobile masthead, fine icons only. */
.site-header .pt-guide-shortcut{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;padding:8px 10px;font-size:12px;line-height:1.2;flex-shrink:0}
.site-header .pt-guide-shortcut svg{width:15px;height:15px;flex:none}
.pt-route-icon{background:transparent!important;border:0!important;color:#159CB1!important;width:33px!important;height:33px!important}
.pt-route-icon svg{width:27px!important;height:27px!important;stroke-width:1.5}
.pt-route-card:nth-child(2) .pt-route-icon{color:#183B33!important}
.pt-route-card:nth-child(3) .pt-route-icon{color:#159CB1!important}
.pt-route-card:nth-child(4) .pt-route-icon{color:#DE9C43!important}
.pt-route-card:nth-child(5) .pt-route-icon{color:#159CB1!important}
.pt-route-card:nth-child(6) .pt-route-icon{color:#183B33!important}
.pt-dining-symbol--fine{background:transparent!important;color:#183B33!important;border:0!important}
.pt-dining-symbol--fine svg{stroke-width:1.4!important;width:25px;height:25px}
@media(max-width:650px){.site-header .head-shell{display:flex;align-items:center;gap:7px}.site-header .brand{min-width:0;flex:1}.site-header .brand span{min-width:0}.site-header .brand small{display:block;white-space:normal;font-size:9px;line-height:1.2;max-width:100%}.site-header .brand strong{font-size:clamp(16px,4.3vw,24px);white-space:nowrap}.site-header .brand img{width:44px;max-height:47px;object-fit:contain}.site-header .header-actions{gap:6px;flex-shrink:0}.site-header .pt-guide-shortcut{padding:7px 8px;font-size:11px}.site-header #lang{padding:7px 9px;font-size:12px}}
