/* Article-only booking layer. Existing tour and hub templates are unchanged. */
[data-cro] {box-sizing:border-box;color:#242733;font-family:inherit;line-height:1.55;}
[data-cro] *,[data-cro] *::before,[data-cro] *::after{box-sizing:border-box}
[data-cro] [hidden], [data-cro][hidden]{display:none!important}
[data-cro] p{margin:.35rem 0 .9rem;max-width:none}
[data-cro] a{overflow-wrap:anywhere}
[data-cro] button,[data-cro] input,[data-cro] select{font:inherit}
[data-cro] button,[data-cro] summary{cursor:pointer}
[data-cro] button:focus-visible,[data-cro] a:focus-visible,[data-cro] input:focus-visible,[data-cro] select:focus-visible,[data-cro] summary:focus-visible{outline:3px solid #a5542d;outline-offset:4px}
.cro-intro{border-left:3px solid #963849;padding:.5rem 1rem;margin:2rem 0 2.5rem;background:#f0ede5}
.cro-intro p{font-size:1rem}
.cro-jump,.cro-reset,.cro-comparison button{border:1px solid #c2bdb2;background:#fffdf7;border-radius:6px;padding:.55rem .8rem;color:#263676;min-height:44px}
.cro-context{margin:2rem 0 2.8rem;border-left:3px solid #9c4656;padding:1rem 1.2rem;background:#faf7ef;clear:both}
.cro-context p{font-size:1rem}
.cro-eyebrow{font-size:.78rem!important;letter-spacing:.08em;text-transform:uppercase;color:#833847;font-weight:750}
.cro-action{display:inline-flex;justify-content:center;align-items:center;background:#2e3c85;color:white!important;padding:.7rem 1rem;border-radius:7px;min-height:46px;font-size:.95rem;font-weight:700;line-height:1.35;text-decoration:none!important;white-space:normal;text-align:center;max-width:100%}
.cro-action:hover{background:#202d69}
.cro-image{display:grid;grid-template-columns:180px minmax(0,1fr);gap:1.2rem;padding:0;border:1px solid #d9d2c5;border-radius:9px;overflow:hidden;}
.cro-image>img{width:100%;height:100%;min-height:220px;object-fit:cover;margin:0}
.cro-image>div{padding:1.2rem 1.2rem 1.2rem 0}
.cro-gyg-frame{width:100%;height:510px;border:0;background:#fff;display:block}
.cro-fallback{font-size:.9rem;margin-top:.5rem}
.cro-fallback summary{padding:.6rem 0;color:#283675}
.cro-booking{max-width:800px;margin:2rem auto 4rem;padding:2rem;border:1px solid #c9c0b0;border-top:5px solid #983d4e;border-radius:12px;background:#fffdf7;clear:both}
.cro-booking h2{font-size:clamp(1.5rem,4vw,2rem);line-height:1.2;margin:.4rem 0 1.2rem}
.cro-booking h3{font-size:1.35rem;margin:.5rem 0;line-height:1.3}
.cro-support{margin:0 0 1.6rem;border-bottom:1px solid #d9d2c5;padding-bottom:1rem}
.cro-support>summary,.cro-cost>summary{font-weight:700;color:#2d3974;min-height:44px;padding:.4rem 0}
#cro-form{padding:1rem 0}
.cro-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;margin:.8rem 0}
.cro-booking label{display:block;font-size:.9rem;font-weight:650;color:#3d3d43}
.cro-booking input:not([type=checkbox]),.cro-booking select{display:block;width:100%;min-width:0;min-height:46px;background:white;border:1px solid #b8b4ac;border-radius:6px;padding:.55rem .65rem;margin:.4rem 0;color:#242733}
.cro-check{display:flex!important;align-items:flex-start;gap:.6rem;margin:1rem 0;font-weight:400!important}
.cro-check input{width:20px;height:20px;flex:none;margin-top:2px}
.cro-small{font-size:.86rem!important;color:#53535b}
.cro-comparison{display:grid;gap:.7rem;margin:1rem 0}
.cro-comparison>div{border-top:1px solid #d9d2c5;padding:1rem 0;font-size:.92rem}
.cro-comparison span{display:block;font-size:.85rem;color:#68636b;margin-top:.2rem}
.cro-cost{margin:1rem 0;font-size:.95rem}
.cro-cost output{display:block;padding:.7rem;border-left:3px solid #8c3d4d;background:#f4eee3}
#cro-no-match{padding:1rem;background:#f1eadf;border-radius:6px}
.cro-float{position:fixed;z-index:45;bottom:20px;right:20px;max-width:390px;background:#fffdf7;border:1px solid #bdb6a7;border-radius:10px;padding:1rem 2.4rem 1rem 1rem;box-shadow:0 8px 32px #0002}
.cro-float>span{font-size:.9rem;display:block;margin-bottom:.6rem}
.cro-float>[data-dismiss-float],.cro-exit>[data-close-exit]:first-child{position:absolute;right:.2rem;top:.2rem;width:38px;height:38px;border:0;border-radius:6px;background:transparent;color:#333;font-size:1.5rem;line-height:1}
.cro-exit{max-width:480px;width:calc(100% - 32px);border:1px solid #bdb6a7;padding:2rem;border-radius:12px;background:#fffdf7;color:#242733;box-shadow:0 15px 60px #0004}
.cro-exit::backdrop{background:#14172b80}
.cro-exit h2{font-size:1.8rem;line-height:1.2;margin:.5rem 0 1rem}
.cro-exit .cro-reset{display:block;margin-top:1rem}
.editorial-correction{border-left:3px solid #92503c;padding:1rem;background:#eee9df;font-size:1rem}
body.article:has(#cro-reading){padding-bottom:0}
@media(max-width:650px){.cro-image{grid-template-columns:1fr}.cro-image>img{height:190px;min-height:0}.cro-image>div{padding:0 1rem 1.2rem}.cro-context{padding:1rem;margin:1.5rem 0 2rem}.cro-image{padding:0}.cro-fields{grid-template-columns:1fr;gap:.3rem}.cro-booking{padding:1.2rem;margin:1rem 16px 3rem}.blog-post .cro-booking{margin-left:0;margin-right:0}.cro-float{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));max-width:none;padding:.8rem 2.3rem .8rem .8rem}.cro-float .cro-action{font-size:.9rem}.cro-gyg-frame{height:550px}.cro-booking summary{line-height:1.5}}
@media(prefers-reduced-motion:no-preference){.cro-float:not([hidden]){animation:cro-in .2s ease-out}@keyframes cro-in{from{transform:translateY(15px);opacity:0}to{transform:translateY(0);opacity:1}}}
#cro-booking{scroll-margin-top:100px}.price-context{font-size:.9rem;color:#595861}
#cro-reading h2,#cro-reading h3{scroll-margin-top:100px}
