.twt-consent { position:fixed; z-index:80; right:24px; bottom:24px; width:min(540px,calc(100vw - 32px)); padding:22px; border:1px solid #a8bbb5; background:#fffaf4; color:#343633; box-shadow:0 12px 32px #1b1a1a18; font:400 13px/1.6 var(--ui, sans-serif); }
.twt-consent[hidden],.twt-consent [hidden] { display:none; }
.twt-consent h2 { margin:0 0 8px; font:600 17px/1.4 var(--ui,sans-serif); }
.twt-consent p { margin:0 0 16px; max-width:65ch; font:400 12px/1.65 var(--ui,sans-serif); }
.twt-consent a { text-decoration:underline; text-underline-offset:3px; }
.twt-consent-actions { display:flex; flex-wrap:wrap; gap:8px; }
.twt-consent button { padding:10px 14px; min-height:42px; border:1px solid #57736b; background:transparent; color:#263f37; font:600 11px/1.4 var(--ui,sans-serif); cursor:pointer; }
.twt-consent button[data-choice=all],.twt-consent button[data-choice=save] { background:#39574b; color:#fffaf4; }
.twt-consent button:hover { background:#dfe9e2; color:#263f37; }
.twt-consent button:focus-visible { outline:3px solid #237b7c; outline-offset:3px; }
.twt-consent-options { margin:12px 0 18px; padding-top:12px; border-top:1px solid #d9d6ca; }
.twt-consent-options label { display:inline-flex; align-items:center; gap:8px; margin:0 22px 12px 0; min-height:36px; }
.twt-consent-options input { width:18px; height:18px; accent-color:#39574b; }
.twt-consent .twt-gpc { font-size:11px; }
.privacy-choices-link { border:0; background:none; padding:0; color:inherit; text-decoration:underline; text-underline-offset:3px; font:inherit; cursor:pointer; }
.trip-brochure-cta { margin:16px 0 0; }
.trip-brochure-cta .btn { min-height:46px; padding:12px 18px; gap:14px; }
.brochure-dialog { width:min(540px,calc(100vw - 32px)); max-height:calc(100vh - 40px); overflow:auto; padding:32px; background:#fffaf4; color:#343633; border:1px solid #acbcb5; }
.brochure-dialog::backdrop { background:#1b1a1a66; }
.brochure-dialog h2 { font:400 38px/1.1 var(--serif,Georgia,serif); max-width:19ch; margin:0 36px 16px 0; }
.brochure-dialog p { font:400 14px/1.65 var(--ui,sans-serif); }
.brochure-close { position:absolute; top:12px; right:14px; width:40px; height:40px; padding:8px; border:0; background:none; color:#343633; }
.brochure-close svg { width:22px; height:22px; }
.brochure-fields { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:22px 0; }
.brochure-fields label { font:500 12px/1.5 var(--ui,sans-serif); }
.brochure-fields input { width:100%; min-height:46px; padding:10px; margin-top:6px; border:1px solid #b7c3bc; border-radius:0; background:#fffaf4; color:#343633; font:400 16px/1.4 var(--ui,sans-serif); }
.brochure-marketing { display:flex; align-items:flex-start; gap:10px; font:400 12px/1.6 var(--ui,sans-serif); margin-bottom:20px; }
.brochure-marketing input { margin-top:4px; width:18px; height:18px; flex-shrink:0; accent-color:#39574b; }
.brochure-dialog .btn { min-height:50px; }
.brochure-dialog .brochure-note { margin-top:14px; font-size:11px; color:#575c54; }
.brochure-dialog [role=status]:not(:empty) { margin-top:18px; }
.brochure-dialog [role=status] a { display:block; margin-top:10px; text-decoration:underline; text-underline-offset:3px; font-weight:600; }
.brochure-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden; }
@media(max-width:550px) { .twt-consent { right:16px; bottom:16px; padding:18px; } .brochure-dialog { padding:26px 22px; } .brochure-fields { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { .twt-consent,.brochure-dialog { scroll-behavior:auto; } }

