/* BMT V23 – focused, reversible full-width EN/ES corrections. */
/* Expand WordPress content constraining wrappers, not the full-bleed backgrounds. */
html body.bmt23 .wp-site-blocks main,
html body.bmt23 .wp-site-blocks main .wp-block-post-content,
html body.bmt23 .wp-site-blocks main .entry-content{
    width:100%!important;max-width:none!important;min-width:0!important;
    box-sizing:border-box!important;
}
html body.bmt23 .wp-site-blocks main .entry-content > :is(.bmt17,.bmt-unified,.bmt19,.bmt21,.bmt22-about,.bmt9,.bmt15-reviews,.bmt15-contact-intro,.bmt23-contact-details),
html body.bmt23 .wp-site-blocks main .wp-block-post-content > :is(.bmt17,.bmt-unified,.bmt19,.bmt21,.bmt22-about,.bmt9,.bmt15-reviews,.bmt15-contact-intro,.bmt23-contact-details){
    max-width:none!important;width:100%!important;box-sizing:border-box!important;
}
html body.bmt23 .wp-site-blocks main :is(.bmt17-wrap,.bmt-unified-shell,.bmt22-about,.bmt23-container){
    width:min(1520px,calc(100% - clamp(32px,5vw,96px)))!important;
    max-width:1520px!important;margin-inline:auto!important;
    box-sizing:border-box!important;min-width:0!important;
}
html body.bmt23 .wp-site-blocks main :is(.bmt17-wrap,.bmt-unified-shell,.bmt23-container) > *{
    min-width:0;box-sizing:border-box;
}
/* Known over-restricted text and day-stage widths. */
html body.bmt23 .wp-site-blocks main :is(.bmt17-itinerary,.bmt21-itinerary,.bmt21-daytrips,.bmt16-legacy-context,.bmt17-overview,.bmt19-introduction) :is(.bmt17-section-lead,.bmt17-day-copy,.bmt17-day-copy p,.bmt17-day-copy h3,.bmt16-excursion p,.bmt-unified-prose){
    max-width:none!important;min-width:0!important;
}
html body.bmt23 .wp-site-blocks main .bmt17-itinerary .bmt17-timeline{width:100%!important;max-width:none!important}
html body.bmt23 .wp-site-blocks main .bmt17-itinerary article.bmt21-day{width:100%!important;max-width:none!important;box-sizing:border-box!important}
html body.bmt23 .wp-site-blocks main .bmt21-inquiry-form{max-width:100%!important}
html body.bmt23 .wp-site-blocks main .bmt22-about{padding-inline:0!important}
/* Improve the route cards on desktop, tablet and mobile without changing page content. */
html body.bmt23 .wp-site-blocks main .bmt16-card-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,275px),1fr))!important;
    align-items:stretch!important;gap:clamp(14px,2vw,24px)!important;
    width:100%!important;max-width:none!important;
}
html body.bmt23 .wp-site-blocks main .bmt16-card-grid>a.bmt16-route-card{
    display:flex!important;flex-direction:column!important;align-items:flex-start!important;
    justify-content:space-between!important;gap:16px!important;
    width:100%!important;min-width:0!important;max-width:none!important;
    box-sizing:border-box!important;padding:clamp(20px,2vw,30px)!important;
    border-radius:9px!important;
}
html body.bmt23 .wp-site-blocks main .bmt16-card-grid>a.bmt16-route-card>strong{
    display:block!important;overflow-wrap:break-word!important;
    font-size:clamp(18px,1.5vw,23px)!important;line-height:1.35!important;
}
html body.bmt23 .wp-site-blocks main .bmt16-card-grid>a.bmt16-route-card>span{
    display:inline-flex!important;align-items:center!important;
    padding:11px 16px!important;min-height:44px!important;box-sizing:border-box!important;
    border-radius:5px!important;white-space:normal!important;line-height:1.4!important;
}
/* Original "Make this itinerary your own" is moved after the LAST day. */
html body.bmt23 .wp-site-blocks main .bmt21-itinerary .bmt17-timeline>aside.bmt19-cta-mid{
    display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
    gap:22px!important;align-items:center!important;
    width:100%!important;max-width:none!important;box-sizing:border-box!important;
    margin:clamp(24px,4vw,44px) 0 6px!important;
    padding:clamp(22px,3vw,36px)!important;
    background:#fffaf4!important;border:1px solid #decbb6!important;
    border-left:5px solid #b15b31!important;border-radius:10px!important;
    box-shadow:0 8px 28px rgba(46,29,21,.06)!important;
}
html body.bmt23 .wp-site-blocks main .bmt21-itinerary aside.bmt19-cta-mid h3{
    font:400 clamp(24px,2.3vw,33px)/1.2 Georgia,serif!important;
    color:#35241e!important;margin:7px 0 10px!important;text-transform:none!important;
}
html body.bmt23 .wp-site-blocks main .bmt21-itinerary aside.bmt19-cta-mid p{
    max-width:75ch!important;font-size:16px!important;line-height:1.7!important;
}
html body.bmt23 .wp-site-blocks main .bmt21-itinerary aside.bmt19-cta-mid>a{
    display:inline-flex!important;justify-content:center!important;align-items:center!important;
    max-width:340px!important;white-space:normal!important;
    border-radius:6px!important;box-sizing:border-box!important;
}
/* Header/footer email: visible, high-contrast, wrapped correctly on small screens. */
html body.bmt23 .bmt23-contact-strip{
    width:100%!important;max-width:none!important;box-sizing:border-box!important;
    display:flex!important;align-items:center!important;justify-content:flex-end!important;
    gap:10px 16px!important;flex-wrap:wrap!important;
    padding:8px clamp(16px,3vw,52px)!important;
    font:500 14px/1.45 system-ui,sans-serif!important;
}
html body.bmt23 .bmt23-contact-strip--header{
    background:#f7eee4!important;color:#38251b!important;
    border-top:1px solid #decab8!important;
}
html body.bmt23 .bmt23-contact-strip--footer{
    background:#39271f!important;color:#f4e6d6!important;
    border-top:1px solid #73513c!important;
}
html body.bmt23 .bmt23-contact-strip-label{
    font-size:12px!important;letter-spacing:.07em!important;text-transform:uppercase!important;
    font-weight:800!important;color:inherit!important;
}
html body.bmt23 .bmt23-contact-strip a.bmt23-email{
    text-decoration:underline!important;text-underline-offset:3px!important;
    color:inherit!important;-webkit-text-fill-color:inherit!important;
    overflow-wrap:anywhere!important;font-weight:700!important;
}
html body.bmt23 .bmt23-contact-strip a.bmt23-email:hover{opacity:.8!important}
/* Full-width, editorial contact section replaces the old flat company details definition list. */
html body.bmt23 .wp-site-blocks main .bmt23-contact-details{
    background:#f7f2eb!important;padding:clamp(46px,5vw,76px) 0!important;
    border-top:1px solid #e4d6c8!important;border-bottom:1px solid #e4d6c8!important;
}
html body.bmt23 .wp-site-blocks main .bmt23-contact-header{
    display:flex!important;flex-direction:column!important;align-items:flex-start!important;
    max-width:940px!important;margin:0 0 clamp(24px,3vw,38px)!important;
}
html body.bmt23 .wp-site-blocks main .bmt23-eyebrow{
    color:#a45028!important;font:800 12px/1.5 system-ui,sans-serif!important;
    letter-spacing:.12em!important;margin:0 0 12px!important;
}
html body.bmt23 .wp-site-blocks main .bmt23-contact-header h2{
    font:400 clamp(33px,3.3vw,48px)/1.15 Georgia,serif!important;
    text-transform:none!important;letter-spacing:0!important;
    color:#35241e!important;margin:0 0 14px!important;
}
html body.bmt23 .wp-site-blocks main .bmt23-contact-header>p:last-child{
    color:#59473b!important;font:400 clamp(16px,1.22vw,19px)/1.7 system-ui,sans-serif!important;
    max-width:70ch!important;margin:0!important;
}
html body.bmt23 .wp-site-blocks main .bmt23-contact-grid{
    display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:clamp(14px,1.7vw,24px)!important;width:100%!important;
}
html body.bmt23 .wp-site-blocks main .bmt23-contact-card{
    display:flex!important;align-items:flex-start!important;gap:18px!important;min-width:0!important;
    box-sizing:border-box!important;background:#fff!important;border:1px solid #e2d6c8!important;
    border-radius:10px!important;padding:clamp(20px,2vw,30px)!important;
    box-shadow:0 8px 30px rgba(65,40,23,.035)!important;
}
html body.bmt23 .wp-site-blocks main .bmt23-contact-icon{
    flex:0 0 40px!important;width:40px!important;height:40px!important;
    display:grid!important;place-items:center!important;background:#f4e9df!important;
    border-radius:10px!important;color:#a04a27!important;font-size:20px!important;
}
html body.bmt23 .wp-site-blocks main .bmt23-contact-card-copy{min-width:0!important;overflow-wrap:anywhere!important}
html body.bmt23 .wp-site-blocks main .bmt23-contact-card h3{
    font:800 12px/1.4 system-ui,sans-serif!important;letter-spacing:.08em!important;
    color:#98603e!important;margin:0 0 12px!important;text-transform:uppercase!important;
}
html body.bmt23 .wp-site-blocks main .bmt23-contact-card-copy>div{
    font:600 clamp(15px,1.15vw,18px)/1.6 system-ui,sans-serif!important;
    color:#382820!important;overflow-wrap:anywhere!important;
}
html body.bmt23 .wp-site-blocks main .bmt23-contact-card a{
    color:#97411d!important;-webkit-text-fill-color:#97411d!important;
    text-decoration:underline!important;text-underline-offset:3px!important;
    overflow-wrap:anywhere!important;
}
html body.bmt23 .wp-site-blocks main .bmt23-separator{display:inline-block!important;margin:0 9px!important}
@media(min-width:981px){
 html body.bmt23 .wp-site-blocks main .bmt23-contact-card:nth-child(4){grid-column:span 2!important}
}
@media(min-width:1900px){
    html body.bmt23 .wp-site-blocks main :is(.bmt17-wrap,.bmt-unified-shell,.bmt22-about,.bmt23-container){
       max-width:1680px!important;width:min(1680px,calc(100% - 120px))!important;
    }
}
@media(max-width:980px){
    html body.bmt23 .wp-site-blocks main .bmt23-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    html body.bmt23 .wp-site-blocks main .bmt21-itinerary .bmt17-timeline>aside.bmt19-cta-mid{
       grid-template-columns:minmax(0,1fr)!important;
    }
}
@media(max-width:640px){
    html body.bmt23 .wp-site-blocks main :is(.bmt17-wrap,.bmt-unified-shell,.bmt22-about,.bmt23-container){
        width:calc(100% - 28px)!important;max-width:none!important;
    }
    html body.bmt23 .wp-site-blocks main .bmt23-contact-grid{grid-template-columns:minmax(0,1fr)!important}
    html body.bmt23 .wp-site-blocks main .bmt23-contact-card{gap:13px!important;padding:20px!important}
    html body.bmt23 .bmt23-contact-strip{justify-content:center!important;text-align:center!important;padding:10px 14px!important}
    html body.bmt23 .wp-site-blocks main .bmt21-itinerary .bmt17-timeline>aside.bmt19-cta-mid{padding:21px 16px!important}
    html body.bmt23 .wp-site-blocks main .bmt21-itinerary aside.bmt19-cta-mid>a{
        width:100%!important;max-width:none!important;
    }
}
