/* CARQIVO V4.6 — optional, locally selected activities. No external assets. */
.cq-activities { margin-block: 2rem; scroll-margin-top: 6.5rem; color: #203b35; }
.cq-activities[hidden], .cq-act-jump[hidden] { display:none !important; }
.cq-activities-home { padding-block: .25rem 1rem; }
.cq-act-panel { border:1px solid #d5e0d3; border-radius:24px; background:#f2f5ec; padding:clamp(1.1rem,3vw,2rem); }
.cq-act-head { max-width:60rem; }
.cq-act-eyebrow { font-size:.7rem; line-height:1.6; letter-spacing:.1em; font-weight:750; text-transform:uppercase; margin:0 0 .65rem; color:#546b51; }
.cq-activities h2 { font-size:clamp(1.65rem,2.5vw,2.3rem); line-height:1.18; margin:0 0 .7rem; overflow-wrap:anywhere; letter-spacing:-.02em; }
.cq-act-context { margin:.55rem 0; font-size:.9rem; line-height:1.55; color:#344b44; }
.cq-act-context bdi { font-weight:750; }
.cq-act-intro { font-size:.97rem; line-height:1.65; max-width:58rem; margin:.65rem 0 1.3rem; color:#506057; }
.cq-act-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.cq-act-card { display:flex; flex-direction:column; min-width:0; padding:1.3rem; border-radius:17px; border:1px solid #dbe4d8; background:#fff; }
.cq-act-card p { margin:.6rem 0 1rem; line-height:1.65; font-size:.94rem; color:#506057; }
.cq-act-tag { align-self:flex-start; display:inline-flex; border-radius:99px; padding:.32rem .7rem; background:#e7efdb; color:#355343; font-size:.74rem; font-weight:750; line-height:1.5; margin-bottom:.8rem; }
.cq-act-tag-all { background:#eef2ee; }
.cq-act-card h3 { font-size:1.2rem; line-height:1.35; font-weight:750; margin:0; overflow-wrap:anywhere; }
.cq-act-link { display:flex; align-items:center; justify-content:space-between; gap:.6rem; padding:.8rem .95rem; min-height:48px; margin-top:auto; border:1px solid #20473b; border-radius:10px; color:#fff; background:#20473b; font-size:.89rem; font-weight:700; line-height:1.5; text-decoration:none !important; }
.cq-act-link span:first-child { min-width:0; overflow-wrap:anywhere; }
.cq-act-link:hover { background:#153a2f; color:#fff; }
.cq-act-link-secondary { background:#fff; color:#20473b; border-color:#bbcdbc; }
.cq-act-link-secondary:hover { background:#eaf0e3; color:#183c2e; }
.cq-act-arrow { font-size:1.2rem; flex:0 0 auto; }
.cq-act-link:focus-visible, .cq-act-jump:focus-visible, .cq-act-info summary:focus-visible { outline:3px solid #58733c; outline-offset:4px; }
.cq-act-disclosure { font-size:.8rem; line-height:1.6; color:#506057; margin:1rem 0 .6rem; }
.cq-act-info { border-top:1px solid #d3decf; padding-top:.7rem; margin-top:.8rem; }
.cq-act-info summary { font-size:.91rem; line-height:1.5; font-weight:750; cursor:pointer; padding:.2rem 0; }
.cq-act-info p { font-size:.85rem; line-height:1.65; margin:.55rem 0; color:#506057; }
.cq-act-jump { display:inline-flex; align-items:center; gap:.5rem; color:#254936; font-size:.87rem; line-height:1.6; text-underline-offset:4px; font-weight:700; padding:.35rem 0; }
.article-aside .cq-act-jump { margin-top:.8rem; padding:.6rem; }
.cq-act-noscript { font-size:.9rem; margin-block:1rem; }
[dir=rtl] .cq-act-eyebrow { letter-spacing:0; }
[dir=rtl] .cq-act-card h3 { line-height:1.55; }
@media(max-width:640px) {
 .cq-act-grid { grid-template-columns:1fr; }
 .cq-act-panel { border-radius:18px; }
 .cq-act-card { padding:1.05rem; }
 .cq-activities-home { margin-top:1rem; }
 .cq-act-info summary { min-height:44px; display:list-item; padding:.6rem 0; }
}
@media print { .cq-act-link { color:#203b35; background:none; } .cq-act-jump { display:none; } }
.cq-act-status { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }

/* CARQIVO 4.8.8 — optional eSIM link; no third-party code */
.cq-esim { margin-block:1.35rem; scroll-margin-top:7rem; }
.cq-esim-home { margin-block:1.4rem 1.8rem; }
.cq-esim .cq-esim-panel { padding:clamp(1.1rem,2.3vw,1.8rem); border:1px solid #d5e0d2; border-radius:20px; background:#f0f5eb; color:#1f3630; }
.cq-esim .cq-esim-main { display:grid; grid-template-columns:minmax(0,1fr) minmax(13.5rem,.62fr); gap:1.1rem 1.8rem; align-items:center; }
.cq-esim .cq-esim-copy, .cq-esim .cq-esim-action { min-width:0; }
.cq-esim .cq-esim-tag { display:flex; align-items:center; gap:.65rem; margin:0 0 .75rem; color:#496244; font-size:.74rem; line-height:1.5; font-weight:750; letter-spacing:.055em; }
.cq-esim .cq-esim-icon { flex:0 0 30px; }
.cq-esim h2 { margin:0 0 .65rem; font-size:clamp(1.2rem,2.2vw,1.7rem); line-height:1.35; letter-spacing:-.02em; overflow-wrap:anywhere; }
.cq-esim .cq-esim-intro { margin:.55rem 0 0; color:#40554a; font-size:.96rem; line-height:1.65; }
.cq-esim .cq-esim-button { display:flex; align-items:center; justify-content:space-between; gap:.65rem; padding:.85rem 1rem; min-height:48px; border:1px solid #22483a; border-radius:12px; background:#244c3d; color:#fff; text-decoration:none; font-weight:750; line-height:1.5; font-size:.94rem; }
.cq-esim .cq-esim-button span { min-width:0; overflow-wrap:anywhere; }
.cq-esim .cq-esim-button svg { flex:0 0 18px; }
.cq-esim .cq-esim-button:hover { background:#16382b; color:#fff; }
.cq-esim .cq-esim-landing { margin:.65rem 0 0; font-size:.8rem; line-height:1.65; color:#43584d; }
.cq-esim .cq-esim-disclosure { margin:1rem 0 .65rem; font-size:.81rem; line-height:1.65; color:#43584d; }
.cq-esim .cq-esim-checks { padding:.65rem 0 0; margin:.5rem 0 0; border:0; border-top:1px solid #d1ddcb; border-radius:0; background:transparent; }
.cq-esim .cq-esim-checks summary { cursor:pointer; padding:.45rem 0; min-height:44px; font-weight:750; font-size:.9rem; line-height:1.6; list-style:revert; }
.cq-esim .cq-esim-checks ul { padding-inline-start:1.3rem; margin:.5rem 0; color:#40554a; font-size:.87rem; line-height:1.65; }
.cq-esim .cq-esim-checks li { margin-block:.55rem; }
.cq-esim .cq-esim-compat { color:#244c3d; font-size:.87rem; line-height:1.65; text-decoration:underline; text-underline-offset:3px; }
.cq-esim .cq-esim-button:focus-visible, .cq-esim summary:focus-visible, .cq-esim .cq-esim-compat:focus-visible { outline:3px solid #59723b; outline-offset:4px; }
[dir=rtl] .cq-esim .cq-esim-tag { letter-spacing:0; }
@media (max-width:740px) { .cq-esim .cq-esim-main { grid-template-columns:minmax(0,1fr); gap:1rem; } .cq-esim h2 { font-size:1.35rem; } }
@media print { .cq-esim .cq-esim-button { color:#203b35; background:none; } }

/* CARQIVO 4.8.9 — accommodation link, no widget or external resources */
.cq-stay { margin-block:1.35rem; scroll-margin-top:7rem; }
.cq-stay-home { margin-block:1.4rem 1.8rem; }
.cq-stay-panel { padding:clamp(1.1rem,2.3vw,1.8rem); border:1px solid #dddccb; border-radius:20px; background:#f7f7ed; color:#1f3630; }
.cq-stay-main { display:grid; grid-template-columns:minmax(0,1fr) minmax(13.5rem,.65fr); gap:1.1rem 1.8rem; align-items:center; }
.cq-stay-copy, .cq-stay-action { min-width:0; }
.cq-stay-tag { display:flex; align-items:center; gap:.65rem; margin:0 0 .75rem; color:#526048; font-size:.74rem; line-height:1.5; font-weight:750; letter-spacing:.05em; }
.cq-stay-tag svg { flex:0 0 28px; }
.cq-stay h2 { margin:0 0 .65rem; font-size:clamp(1.2rem,2.2vw,1.7rem); line-height:1.35; letter-spacing:-.02em; overflow-wrap:anywhere; }
.cq-stay-intro { margin:.55rem 0 0; color:#40554a; font-size:.96rem; line-height:1.65; }
.cq-stay-button { display:flex; align-items:center; justify-content:space-between; gap:.65rem; min-height:48px; padding:.85rem 1rem; border:1px solid #284b3e; border-radius:12px; background:#fff; color:#244c3d; text-decoration:none; font-weight:750; font-size:.94rem; line-height:1.5; }
.cq-stay-button span { min-width:0; overflow-wrap:anywhere; }
.cq-stay-button svg { flex:0 0 18px; }
.cq-stay-button:hover { background:#e9efdf; color:#16382b; }
.cq-stay-landing { margin:.65rem 0 0; font-size:.8rem; line-height:1.65; color:#43584d; }
.cq-stay-disclosure { margin:1rem 0 .65rem; font-size:.81rem; line-height:1.65; color:#43584d; }
.cq-stay-checks { padding:.65rem 0 0; margin:.5rem 0 0; border:0; border-top:1px solid #d8ddcd; border-radius:0; background:transparent; }
.cq-stay-checks summary { cursor:pointer; padding:.45rem 0; min-height:44px; font-weight:750; font-size:.9rem; line-height:1.6; list-style:revert; }
.cq-stay-checks ul { padding-inline-start:1.3rem; margin:.5rem 0; color:#40554a; font-size:.87rem; line-height:1.65; }
.cq-stay-checks li { margin-block:.55rem; }
.cq-stay-button:focus-visible, .cq-stay summary:focus-visible { outline:3px solid #59723b; outline-offset:4px; }
[dir=rtl] .cq-stay-tag { letter-spacing:0; }
@media(max-width:740px) { .cq-stay-main { grid-template-columns:minmax(0,1fr); gap:1rem; } .cq-stay h2 { font-size:1.35rem; } }
@media print { .cq-stay-button { background:none; color:#203b35; } }
