/* Andiamo Reise-Header: keine globalen Regeln, keine JS-Abhängigkeit. */
.andiamo-trip { --trip-red:#d00000; --trip-width:1200px; --trip-gutter:clamp(20px,4vw,48px); color:#fff; font-family:inherit; margin:0; padding:0; isolation:isolate;background-color:#eae8e8; }
.andiamo-trip, .andiamo-trip * { box-sizing:border-box; }
.andiamo-trip__visual { position:relative; display:grid; align-items:center; min-height:clamp(470px,34vw,650px); background:#34454e; overflow:hidden; }
.andiamo-trip__image { position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; object-position:50% 50%; display:block; }
.andiamo-trip__visual::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(12,27,36,.72),rgba(12,27,36,.4) 60%,rgba(12,27,36,.18)); pointer-events:none; }
.andiamo-trip__copy { position:relative; z-index:1; width:min(calc(100% - var(--trip-gutter) * 2),var(--trip-width)); margin:0 auto; padding:70px 0 0px; }
.andiamo-trip .andiamo-trip__title { color:#fff; font:inherit; font-size:clamp(32px,3.2vw,56px); font-weight:400; line-height:1.14; letter-spacing:-.025em; text-align:left; margin:0 0 20px; padding:0; overflow-wrap:anywhere; }
.andiamo-trip .andiamo-trip__title::before,.andiamo-trip .andiamo-trip__title::after { content:none; }
.andiamo-trip .andiamo-trip__description { color:#fff; font-size:clamp(18px,1.65vw,26px); font-weight:400; line-height:1.45; max-width:850px; margin:0; padding:0; overflow-wrap:anywhere; }
.andiamo-trip__offer-wrap { position:relative; z-index:2; width:min(calc(100% - var(--trip-gutter) * 2),var(--trip-width)); margin:-52px auto 0; }
.andiamo-trip__offer { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.8fr) minmax(240px,1fr); gap:28px; align-items:center; padding:28px 36px; background:var(--trip-red); color:#fff; border-radius:10px; box-shadow:0 9px 22px rgba(0,0,0,.18); }
.andiamo-trip .andiamo-trip__duration { color:#fff; font-size:clamp(20px,1.7vw,26px); line-height:1.25; font-weight:700; margin:0 0 5px; overflow-wrap:anywhere; }
.andiamo-trip .andiamo-trip__transport { color:#fff; font-size:18px; line-height:1.4; margin:0; overflow-wrap:anywhere; }
.andiamo-trip__price { display:flex; flex-wrap:wrap; gap:8px 14px; align-items:baseline; border-left:1px solid rgba(255,255,255,.55); padding-left:28px; }
.andiamo-trip__from { font-size:21px; line-height:1; }
.andiamo-trip__amount { font-size:3rem; line-height:1.1; font-weight:750; letter-spacing:-.03em; white-space:nowrap; }
.andiamo-trip .andiamo-trip__button { display:flex; gap:16px; justify-content:center; align-items:center; width:100%; min-height:56px; padding:16px 20px; border:2px solid #fff; border-radius:4px; background:#fff; color:#b90000; text-decoration:none; font:inherit; font-size:17px; font-weight:700; line-height:1.3; text-align:center; box-shadow:none; transition:background-color .15s,color .15s; }
.andiamo-trip__button span:first-child { overflow-wrap:anywhere; }
.andiamo-trip__arrow { font-size:28px; line-height:1; flex:none; }
.andiamo-trip .andiamo-trip__button:hover { background:#fff1f1; color:#950000; text-decoration:none; }
.andiamo-trip .andiamo-trip__button:focus-visible { outline:3px solid #fff; outline-offset:5px; box-shadow:0 0 0 8px #263b48; }
@media(max-width:1000px) { .andiamo-trip__offer { grid-template-columns:minmax(0,1fr) auto; gap:20px; padding:24px; } .andiamo-trip__button { grid-column:1 / -1; } .andiamo-trip__amount { font-size:48px; } }
@media(max-width:600px) {
 .andiamo-trip { padding-bottom:24px; }
 .andiamo-trip__visual { min-height:0; }
 .andiamo-trip__copy { padding:64px 0 56px; }
 .andiamo-trip .andiamo-trip__title { font-size:clamp(30px,8vw,42px); margin-bottom:18px; }
 .andiamo-trip .andiamo-trip__description { font-size:18px; line-height:1.5; }
 .andiamo-trip__visual::after { background:rgba(12,27,36,.65); }
 .andiamo-trip__offer-wrap { margin:0 auto; }
 .andiamo-trip__offer { grid-template-columns:1fr; gap:18px; border-radius:0 0 10px 10px; padding:24px; }
 .andiamo-trip .andiamo-trip__duration { font-size:22px; }
 .andiamo-trip__price { border-left:0; border-top:1px solid rgba(255,255,255,.5); padding:16px 0 0; }
 .andiamo-trip__amount { font-size:48px; }
 .andiamo-trip .andiamo-trip__button { font-size:17px; min-height:56px; padding:14px 12px; }
}
@media(prefers-reduced-motion:reduce) { .andiamo-trip .andiamo-trip__button { transition:none; } }
