html,body {width:100%;max-width:100%;min-width:0}
body {-webkit-text-size-adjust:100%;text-size-adjust:100%}
main,.booking-wrap,#ag-booking-mount {min-width:0;max-width:100%}
.booking-wrap iframe#ag-booking-engine {display:block;width:100%!important;min-width:0!important;max-width:100%!important;border:0;box-sizing:border-box}
.ag-link-arrow {display:inline-block;flex:0 0 auto;width:18px;height:18px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.text-link {max-width:100%;white-space:normal;min-width:0;overflow-wrap:anywhere}
.text-link>.ag-link-arrow,.text-link>span:has(>.ag-link-arrow) {align-self:center}
.ag-booking-direct {padding:30px 0 42px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ag-booking-direct h2 {font:400 clamp(28px,4vw,38px)/1.15 var(--serif);letter-spacing:-.03em;margin-bottom:16px}
.ag-booking-direct>p:not(.eyebrow) {max-width:46ch;color:var(--muted);font:15px/1.7 var(--sans)}
.ag-booking-direct .ag-booking-selection {color:var(--ink)!important;margin:18px 0;font-variant-numeric:tabular-nums}
.ag-booking-direct .button {margin-top:8px;max-width:100%;font-size:15px;min-height:50px}
.ag-booking-mode-direct .ag-desktop-booking-fallback {display:none}
.ag-booking-direct[hidden],.ag-embedded-booking-hint[hidden] {display:none}
@media(max-width:700px){
 .booking-intro h1 {font-size:clamp(34px,8.7vw,48px);line-height:1.08;overflow-wrap:break-word}
 .booking-intro>.eyebrow {letter-spacing:.13em;max-width:100%;overflow-wrap:break-word}
 .booking-intro>p {font-size:16px}
 .header-inner,.site-header .header-inner {min-width:0}
 .wordmark {min-width:0;max-width:calc(100% - 64px)}
 .site-header .brand-name {overflow-wrap:normal;font-size:clamp(17px,4.4vw,23px)}
 .editorial-footer .ef-bottom,.editorial-footer .ef-main {min-width:0}
 .ef-contact a,.ef-bottom a {overflow-wrap:anywhere}
 .lightbox {width:100%;max-width:100%;margin:0;inset:0}
 .home .section-heading .text-link {white-space:normal}
}

/* AG 0.12 — rezerwacja pozostaje osadzona na kazdym ekranie. */
.booking-wrap iframe#ag-booking-engine {height:1050px;min-height:500px}
.ag-booking-help {border-top:1px solid var(--line);margin-top:24px;padding:18px 0;font:13px/1.6 var(--sans);color:var(--muted)}
.ag-booking-help summary {cursor:pointer;color:var(--ink);width:fit-content}
.ag-booking-help p {max-width:75ch;margin:16px 0}
.ag-booking-help .text-link {font-size:14px}
/* Ilustracja jest pelnym kadrem, nie fotografia konkretnego punktu miasta. */
.ag-city-layout {display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:center;padding-bottom:90px}
.ag-city-art {margin:0;min-width:0;background:#EDE6DC}
.ag-city-art .ag-city-image {display:block;width:100%;height:auto;max-width:100%;border:0;border-radius:0}
.ag-city-art figcaption {display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 18px;font:11px/1.5 var(--sans);color:var(--muted);border-top:1px solid var(--line)}
.ag-city-art figcaption>span:first-child {letter-spacing:.12em;color:var(--ink)}
.ag-city-copy {min-width:0}
.ag-city-copy h2 {font-size:clamp(30px,3vw,44px);line-height:1.15}
.ag-city-copy .eyebrow {font-size:10px;letter-spacing:.15em}
@media(max-width:900px){.ag-city-layout{grid-template-columns:1fr;gap:32px;padding-bottom:55px}.ag-city-copy{max-width:70ch}.ag-city-art figcaption{padding:12px 14px;font-size:10px}}
@media(max-width:700px){.booking-wrap iframe#ag-booking-engine{height:1200px}.ag-city-layout{gap:28px}.ag-booking-help{font-size:13px}}
