:root {
  --ams-blue: #0f4b8f;
  --ams-blue-dark: #07356d;
  --ams-navy: #062c61;
  --ams-yellow: #f5e748;
  --ams-green: #078719;
  --ams-europcar-green: #009900;
  --ams-ink: #15243a;
  --ams-muted: #5f6d7d;
  --ams-pale: #f4f7fb;
  --ams-line: #d9e3ee;
  --ams-white: #fff;
  --ams-shadow: 0 18px 50px rgba(7, 53, 109, .11);
}
.ansa-mobility-service-page .entry-title,
.ansa-mobility-service-page .page-header { display: none !important; }
.ansa-mobility-service-page .site-main,
.ansa-mobility-service-page .entry-content,
.ansa-mobility-service-page .elementor-widget-theme-post-content,
.ansa-mobility-service-page .elementor-widget-container { margin: 0 !important; padding: 0 !important; max-width: none !important; }
.ams-page,
.ams-page * { box-sizing: border-box; }
.ams-page { width: 100%; overflow: clip; color: var(--ams-ink); background: #fff; font-family: "Avenir", "Avenir Next", "AM_Font_MyriadPro", Arial, sans-serif; font-size: 16px; line-height: 1.58; }
.ams-page img { display: block; max-width: 100%; }
.ams-page a { text-decoration: none; }
.ams-shell { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.ams-kicker { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 10px; color: var(--ams-blue); font-size: 13px; line-height: 1.2; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.ams-kicker::before { content: ""; width: 27px; height: 3px; border-radius: 99px; background: var(--ams-yellow); }
.ams-page h1,
.ams-page h2,
.ams-page h3,
.ams-page p { margin-top: 0; }
.ams-page h1,
.ams-page h2,
.ams-page h3 { color: var(--ams-navy); letter-spacing: -.025em; }
.ams-page h1 { margin-bottom: 20px; font-size: clamp(42px, 5.4vw, 72px); line-height: .98; font-weight: 750; }
.ams-page h1 span { display: block; color: var(--ams-yellow); }
.ams-page h2 { margin-bottom: 18px; font-size: clamp(30px, 3.4vw, 48px); line-height: 1.06; font-weight: 730; }
.ams-page h3 { margin-bottom: 9px; font-size: 20px; line-height: 1.2; font-weight: 700; }
.ams-page p { margin-bottom: 18px; }
.ams-page :focus-visible { outline: 3px solid var(--ams-yellow); outline-offset: 4px; }
.ams-hero { min-height: 650px; position: relative; isolation: isolate; display: grid; align-items: center; overflow: hidden; color: #fff; background: linear-gradient(116deg, var(--ams-blue-dark), var(--ams-blue) 56%, #1761ad); }
.ams-hero::before { content: ""; position: absolute; inset: 0; z-index: -2; opacity: .33; background: repeating-radial-gradient(ellipse at 5% 95%, transparent 0 13px, rgba(255,255,255,.13) 14px 15px, transparent 16px 24px); transform: rotate(-8deg) scale(1.2); }
.ams-hero::after { content: ""; position: absolute; width: 720px; aspect-ratio: 1; right: -145px; top: 50%; z-index: -1; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; box-shadow: 0 0 0 60px rgba(255,255,255,.035), 0 0 0 140px rgba(255,255,255,.025); transform: translateY(-50%); }
.ams-hero-grid { min-height: 650px; display: grid; grid-template-columns: minmax(0, .96fr) minmax(430px, 1.04fr); align-items: center; gap: 30px; padding-block: 58px; }
.ams-hero-copy { max-width: 610px; position: relative; z-index: 3; }
.ams-hero .ams-kicker { color: #fff; }
.ams-hero h1 { color: #fff; }
.ams-hero-subline { margin: -7px 0 22px; font-size: clamp(21px, 2.2vw, 29px); line-height: 1.2; font-weight: 650; }
.ams-hero-copy > p:not(.ams-hero-subline) { max-width: 590px; color: rgba(255,255,255,.9); font-size: 18px; line-height: 1.55; }
.ams-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-top: 28px; }
.ams-btn { min-height: 52px; display: inline-flex; align-items: center; justify-content: space-between; gap: 30px; padding: 13px 20px; border: 2px solid transparent; border-radius: 0; color: var(--ams-navy); background: var(--ams-yellow); box-shadow: 0 10px 24px rgba(0,0,0,.14); font-size: 14px; line-height: 1.2; font-weight: 800; letter-spacing: .02em; transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease; }
.ams-btn:hover { color: var(--ams-navy); background: #fff36b; box-shadow: 0 14px 30px rgba(0,0,0,.2); transform: translateY(-3px); }
.ams-btn span { font-size: 22px; line-height: 1; transition: transform .25s ease; }
.ams-btn:hover span { transform: translateX(4px); }
.ams-btn-secondary { color: #fff; background: transparent; border-color: rgba(255,255,255,.55); box-shadow: none; }
.ams-btn-secondary:hover { color: #fff; background: rgba(255,255,255,.1); }
.ams-brand-mark { width: 230px; height: 90px; margin: 0 0 14px auto; padding: 0; border-radius: 0; object-fit: contain; object-position: right center; background: transparent; }
.ams-brand-mark.ams-logo-europcar { width: 235px; height: 95px; }
.ams-brand-mark.ams-logo-ydrive { width: 250px; }
.ams-hero-visual { min-height: 520px; position: relative; align-self: end; display: flex; align-items: flex-end; justify-content: flex-end; }
.ams-hero-visual > div { width: 100%; }
.ams-hero-visual::before { content: ""; position: absolute; width: 78%; height: 58%; right: 1%; bottom: 7%; border-radius: 50%; background: radial-gradient(ellipse, rgba(2,21,46,.36), transparent 65%); filter: blur(10px); }
.ams-hero-car { width: min(650px, 115%); max-width: none !important; max-height: 470px; position: relative; z-index: 1; margin-right: -7%; object-fit: contain; object-position: right bottom; filter: drop-shadow(0 24px 23px rgba(2,25,55,.32)); animation: ams-vehicle-arrive .8s cubic-bezier(.2,.75,.25,1) both; }
.ams-rentals .ams-hero-car { width: min(660px, 118%); }
.ams-ydrive .ams-hero-car { width: min(630px, 112%); }
.ams-europcar .ams-btn-primary { color: #fff; background: var(--ams-green); }
.ams-europcar .ams-btn-primary:hover { background: #0a9820; }
.ams-tabs-section { position: relative; z-index: 5; margin-top: -33px; }
.ams-tabs { min-height: 78px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; padding: 8px; border: 1px solid rgba(15,75,143,.13); border-radius: 14px; background: rgba(255,255,255,.96); box-shadow: 0 18px 44px rgba(7,53,109,.15); backdrop-filter: blur(16px); }
.ams-tab { display: grid; grid-template-columns: 46px minmax(0,1fr) 24px; align-items: center; gap: 12px; padding: 10px 13px; border-radius: 9px; color: var(--ams-ink); transition: color .2s ease, background-color .2s ease, transform .2s ease; }
.ams-tab:hover { color: var(--ams-blue); background: var(--ams-pale); transform: translateY(-2px); }
.ams-tab[aria-current="page"] { color: #fff; background: var(--ams-blue); box-shadow: 0 8px 20px rgba(15,75,143,.24); }
.ams-tab-logo { width: 46px; height: 38px; display: grid; place-items: center; border-radius: 7px; background: #fff; overflow: hidden; }
.ams-tab-logo img { width: 42px; height: 34px; object-fit: contain; }
.ams-tab-logo img.ams-tab-europcar { object-fit: cover; }
.ams-tab-copy { min-width: 0; line-height: 1.12; }
.ams-tab-copy small { display: block; margin-bottom: 3px; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; opacity: .7; }
.ams-tab-copy strong { display: block; font-size: 14px; }
.ams-tab-arrow { font-size: 20px; text-align: center; }
.ams-section { padding-block: 92px; }
.ams-section-pale { background: linear-gradient(180deg, #f7f9fc, #eef4fa); }
.ams-section-head { max-width: 770px; margin: 0 auto 42px; text-align: center; }
.ams-section-head .ams-kicker { justify-content: center; }
.ams-section-head p { color: var(--ams-muted); font-size: 17px; }
.ams-intro-grid { display: grid; grid-template-columns: minmax(0, .86fr) minmax(400px, 1.14fr); gap: clamp(40px, 7vw, 90px); align-items: center; }
.ams-intro-copy p { color: #344256; font-size: 17px; line-height: 1.7; }
.ams-intro-copy p:first-child { color: var(--ams-blue); font-size: clamp(20px, 2.1vw, 27px); line-height: 1.48; font-weight: 650; }
.ams-intro-panel { min-height: 480px; position: relative; display: grid; place-items: center; padding: 42px; border-radius: 24px; overflow: hidden; background: linear-gradient(145deg, #e8f0f8, #f8fbfe); box-shadow: var(--ams-shadow); }
.ams-intro-panel::before { content: ""; position: absolute; width: 420px; height: 420px; right: -100px; top: -120px; border: 54px solid rgba(15,75,143,.07); border-radius: 50%; }
.ams-intro-panel img { width: 100%; max-height: 360px; position: relative; z-index: 1; object-fit: contain; filter: drop-shadow(0 18px 18px rgba(7,53,109,.18)); }
.ams-intro-panel.ams-photo-panel { min-height: 510px; padding: 0; }
.ams-intro-panel.ams-photo-panel::before { display: none; }
.ams-intro-panel .ams-photo { width: 100%; height: 100%; max-height: none; position: absolute; inset: 0; object-fit: cover; object-position: center; filter: none; }
.ams-intro-note { width: min(300px, 72%); position: absolute; left: 24px; bottom: 24px; z-index: 2; padding: 16px 18px; border-left: 4px solid var(--ams-yellow); border-radius: 8px; color: #fff; background: var(--ams-blue); box-shadow: 0 12px 28px rgba(7,53,109,.2); font-size: 14px; line-height: 1.4; }
.ams-intro-note strong { display: block; margin-bottom: 3px; font-size: 17px; }
.ams-benefit-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.ams-benefit { min-height: 190px; position: relative; padding: 26px 24px; border: 1px solid rgba(15,75,143,.16); border-radius: 10px; overflow: hidden; background: #fff; box-shadow: 0 8px 22px rgba(7,53,109,.045); transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease; }
.ams-benefit::after { content: ""; width: 62px; height: 62px; position: absolute; right: -27px; bottom: -27px; border: 9px solid rgba(15,75,143,.08); border-radius: 50%; transition: transform .35s ease; }
.ams-benefit:hover { border-color: rgba(15,75,143,.3); box-shadow: 0 15px 34px rgba(7,53,109,.11); transform: translateY(-5px); }
.ams-benefit:hover::after { transform: scale(1.35); }
.ams-benefit-icon { width: 46px; height: 46px; display: grid; place-items: center; margin-bottom: 20px; border: 2px solid var(--ams-yellow); border-radius: 50%; color: var(--ams-blue); background: transparent; }
.ams-benefit-icon svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.ams-benefit-icon::before { font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 6 Free", "Font Awesome 5 Free"; font-size: 20px; font-weight: 300; line-height: 1; }
.ams-benefit-icon svg { display: none; }
.ams-rentals .ams-benefit:nth-child(1) .ams-benefit-icon::before { content: "\f5e4"; }
.ams-rentals .ams-benefit:nth-child(2) .ams-benefit-icon::before { content: "\f1ad"; }
.ams-rentals .ams-benefit:nth-child(3) .ams-benefit-icon::before { content: "\f63c"; }
.ams-rentals .ams-benefit:nth-child(4) .ams-benefit-icon::before { content: "\f1de"; }
.ams-rentals .ams-benefit:nth-child(5) .ams-benefit-icon::before { content: "\f590"; }
.ams-rentals .ams-benefit:nth-child(6) .ams-benefit-icon::before { content: "\f7d9"; }
.ams-rentals .ams-benefit:nth-child(7) .ams-benefit-icon::before { content: "\f3ed"; }
.ams-europcar .ams-service-card:nth-child(1) .ams-benefit-icon::before { content: "\f1b9"; }
.ams-europcar .ams-service-card:nth-child(2) .ams-benefit-icon::before { content: "\f0b1"; }
.ams-europcar .ams-service-card:nth-child(3) .ams-benefit-icon::before { content: "\f5af"; }
.ams-europcar .ams-service-card:nth-child(4) .ams-benefit-icon::before { content: "\f0c0"; }
.ams-europcar .ams-service-card:nth-child(5) .ams-benefit-icon::before { content: "\f5e4"; }
.ams-europcar .ams-service-card:nth-child(6) .ams-benefit-icon::before { content: "\f500"; }
.ams-europcar .ams-service-card:nth-child(7) .ams-benefit-icon::before { content: "\f5a0"; }
.ams-ydrive .ams-service-card:nth-child(1) .ams-benefit-icon::before { content: "\f5af"; }
.ams-ydrive .ams-service-card:nth-child(2) .ams-benefit-icon::before { content: "\f0b1"; }
.ams-ydrive .ams-service-card:nth-child(3) .ams-benefit-icon::before { content: "\f508"; }
.ams-ydrive .ams-service-card:nth-child(4) .ams-benefit-icon::before { content: "\f004"; }
.ams-ydrive .ams-service-card:nth-child(5) .ams-benefit-icon::before { content: "\f59f"; }
.ams-ydrive .ams-service-card:nth-child(6) .ams-benefit-icon::before { content: "\f0c0"; }
.ams-ydrive .ams-service-card:nth-child(7) .ams-benefit-icon::before { content: "\f073"; }
.ams-benefit-compact { min-height: 176px; }
.ams-benefit-compact h3 { margin: 0; font-size: 17px; line-height: 1.36; font-weight: 650; }
.ams-benefit p { margin: 0; color: var(--ams-muted); font-size: 14px; line-height: 1.5; }
.ams-business-panel { display: grid; grid-template-columns: 1.08fr .92fr; overflow: hidden; border-radius: 24px; color: #fff; background: var(--ams-blue); box-shadow: 0 22px 54px rgba(7,53,109,.17); }
.ams-business-copy { padding: clamp(34px, 5vw, 66px); }
.ams-business-copy .ams-kicker,
.ams-business-copy h2 { color: #fff; }
.ams-business-copy p { max-width: 650px; color: rgba(255,255,255,.87); font-size: 17px; }
.ams-business-visual { min-height: 430px; position: relative; display: flex; align-items: flex-end; justify-content: center; overflow: hidden; background: linear-gradient(145deg, rgba(255,255,255,.12), rgba(0,0,0,.08)); }
.ams-business-visual::before { content: ""; position: absolute; inset: 24px; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; transform: scale(1.25); }
.ams-business-visual img { width: 105%; max-width: none; position: relative; z-index: 1; margin-bottom: 10px; filter: drop-shadow(0 18px 18px rgba(2,25,55,.34)); }
.ams-service-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.ams-service-card { min-height: 250px; position: relative; padding: 30px 28px; border: 1px solid rgba(15,75,143,.16); border-radius: 10px; overflow: hidden; background: #fff; box-shadow: 0 8px 24px rgba(7,53,109,.045); transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease; }
.ams-service-card:hover { border-color: rgba(15,75,143,.3); box-shadow: 0 18px 38px rgba(7,53,109,.12); transform: translateY(-6px); }
.ams-service-number { position: absolute; right: 19px; top: 15px; color: rgba(15,75,143,.1); font-size: 46px; line-height: 1; font-weight: 800; }
.ams-service-card .ams-benefit-icon { margin-bottom: 24px; }
.ams-service-card p { margin: 0; color: var(--ams-muted); font-size: 14px; }
.ams-service-card-compact { min-height: 190px; }
.ams-service-card-compact h3 { max-width: 78%; margin-bottom: 0; font-weight: 650; }
@media (min-width: 1051px) { .ams-service-card:nth-child(7):last-child { grid-column: 2; } }
.ams-journey-strip { padding-block: 30px; color: #fff; background: var(--ams-navy); }
.ams-journey-strip .ams-shell { display: grid; grid-template-columns: 1.2fr repeat(3, .8fr); align-items: center; gap: 22px; }
.ams-journey-strip h2 { margin: 0; color: #fff; font-size: 27px; }
.ams-journey-point { padding-left: 21px; border-left: 1px solid rgba(255,255,255,.24); }
.ams-journey-point strong { display: block; margin-bottom: 2px; color: var(--ams-yellow); font-size: 18px; }
.ams-journey-point span { color: rgba(255,255,255,.75); font-size: 13px; }
.ams-form-section { padding-block: 92px; background: linear-gradient(155deg, #eef4fa 0%, #fff 54%, #f7f9fc 100%); }
.ams-form-shell { width: min(960px, 100%); margin-inline: auto; border: 1px solid var(--ams-line); border-radius: 16px; overflow: hidden; background: #fff; box-shadow: var(--ams-shadow); }
.ams-form-heading { padding: 38px 42px 28px; text-align: center; background: linear-gradient(180deg, #fff, #f8fbfe); }
.ams-form-heading .ams-kicker { justify-content: center; }
.ams-form-heading h2 { margin-bottom: 12px; color: var(--ams-blue); font-size: clamp(31px, 4vw, 44px); text-transform: uppercase; }
.ams-form-heading p { max-width: 680px; margin: 0 auto; color: var(--ams-muted); }
.ams-form { padding: 32px 42px 0; }
.ams-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px 24px; }
.ams-field { min-width: 0; display: block; color: #49586b; font-size: 13px; font-weight: 700; }
.ams-field > span:first-child { display: block; margin-bottom: 7px; }
.ams-field b { color: var(--ams-blue); }
.ams-field-wide { grid-column: 1 / -1; }
.ams-control { min-height: 52px; position: relative; display: flex; align-items: center; border: 1px solid #cedae6; border-radius: 7px; background: #fff; transition: border-color .2s ease, box-shadow .2s ease; }
.ams-control:focus-within { border-color: var(--ams-blue); box-shadow: 0 0 0 3px rgba(15,75,143,.12); }
.ams-control > svg { width: 21px; height: 21px; flex: 0 0 auto; margin-left: 17px; fill: none; stroke: #6b88a4; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; }
.ams-control input,
.ams-control select,
.ams-control textarea { width: 100%; min-width: 0; margin: 0 !important; padding: 14px 16px 14px 12px !important; border: 0 !important; outline: 0 !important; color: var(--ams-ink); background: transparent !important; box-shadow: none !important; font: inherit; font-size: 15px; font-weight: 500; }
.ams-control select { cursor: pointer; }
.ams-control textarea { min-height: 116px; resize: vertical; }
.ams-control-message { align-items: flex-start; }
.ams-control-message > svg { margin-top: 16px; }
.ams-control input::placeholder,
.ams-control textarea::placeholder { color: #8a97a6; opacity: 1; }
.ams-form-footer { display: flex; justify-content: flex-end; align-items: center; gap: 28px; margin-top: 28px; padding: 24px 0 32px; border-top: 1px solid #e4ebf2; }
.ams-form-assurance { display: flex; align-items: center; gap: 12px; }
.ams-form-assurance > span { width: 42px; height: 42px; flex: 0 0 auto; display: grid; place-items: center; border: 1px solid rgba(15,75,143,.2); border-radius: 50%; color: var(--ams-blue); background: var(--ams-pale); font-size: 20px; }
.ams-form-assurance p { margin: 0; color: var(--ams-muted); font-size: 12px; line-height: 1.4; }
.ams-form-assurance strong { color: var(--ams-blue); font-size: 14px; }
.ams-submit { width: min(100%, 380px); min-height: 52px; display: flex; align-items: center; justify-content: center; gap: 46px; padding: 13px 22px; border: 0; border-radius: 0; cursor: pointer; color: #fff; background: var(--ams-blue); font: inherit; font-size: 14px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.ams-submit:hover { background: var(--ams-blue-dark); box-shadow: 0 10px 22px rgba(7,53,109,.22); transform: translateY(-2px); }
.ams-submit span { color: var(--ams-yellow); font-size: 22px; }
.ams-form-status { margin: 0 42px 4px; padding: 14px 17px; border-radius: 7px; font-size: 14px; }
.ams-form-status.is-success { color: #0b5521; background: #eaf7ee; border: 1px solid #b8dfc3; }
.ams-form-status.is-error { color: #7b2424; background: #fff0f0; border: 1px solid #efcaca; }
.ams-form-status a { color: inherit; font-weight: 800; text-decoration: underline; }
.ams-honeypot { width: 1px; height: 1px; position: absolute; left: -9999px; overflow: hidden; }
.ams-cta-band { padding-block: 76px; color: #fff; background: linear-gradient(115deg, var(--ams-blue-dark), var(--ams-blue)); }
.ams-cta-band-inner { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 32px; }
.ams-cta-band h2 { margin-bottom: 8px; color: #fff; }
.ams-cta-band p { margin: 0; color: rgba(255,255,255,.82); font-size: 17px; }
@keyframes ams-vehicle-arrive { from { opacity: 0; transform: translate3d(60px,15px,0) scale(.95); } to { opacity: 1; transform: none; } }
@media (max-width: 1050px) {
  .ams-shell { width: min(calc(100% - 36px), 940px); }
  .ams-hero,
  .ams-hero-grid { min-height: 610px; }
  .ams-hero-grid { grid-template-columns: 1fr .9fr; gap: 8px; }
  .ams-hero-visual { min-height: 430px; }
  .ams-brand-mark { width: 180px; height: 72px; }
  .ams-hero-car { width: 125%; margin-right: -18%; }
  .ams-tab { grid-template-columns: 40px minmax(0,1fr) 18px; gap: 9px; }
  .ams-tab-logo { width: 40px; }
  .ams-benefit-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .ams-service-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .ams-journey-strip .ams-shell { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
  .ams-shell { width: min(calc(100% - 28px), 600px); }
  .ams-page h1 { font-size: clamp(38px, 11vw, 54px); }
  .ams-page h2 { font-size: clamp(28px, 8vw, 38px); }
  .ams-hero,
  .ams-hero-grid { min-height: auto; }
  .ams-hero-grid { grid-template-columns: 1fr; padding-block: 54px 0; }
  .ams-hero-copy > p:not(.ams-hero-subline) { font-size: 16px; }
  .ams-hero-visual { min-height: 345px; margin-top: 8px; }
  .ams-brand-mark,
  .ams-brand-mark.ams-logo-europcar,
  .ams-brand-mark.ams-logo-ydrive { width: 180px; height: 68px; margin: 0 auto 2px 0; object-position: left center; }
  .ams-hero-car,
  .ams-rentals .ams-hero-car,
  .ams-ydrive .ams-hero-car { width: 112%; margin-right: -11%; }
  .ams-tabs-section { margin-top: -14px; }
  .ams-tabs { grid-template-columns: 1fr; gap: 5px; padding: 7px; }
  .ams-tab { min-height: 64px; grid-template-columns: 44px minmax(0,1fr) 22px; }
  .ams-tab-logo { width: 44px; }
  .ams-section { padding-block: 68px; }
  .ams-section-head { margin-bottom: 32px; }
  .ams-intro-grid { grid-template-columns: 1fr; gap: 34px; }
  .ams-intro-panel { min-height: 370px; padding: 28px; }
  .ams-intro-panel.ams-photo-panel { min-height: 400px; padding: 0; }
  .ams-intro-panel img { max-height: 280px; }
  .ams-business-panel { grid-template-columns: 1fr; }
  .ams-business-visual { min-height: 330px; }
  .ams-service-grid { grid-template-columns: 1fr; }
  .ams-service-card { min-height: 220px; }
  .ams-journey-strip .ams-shell { grid-template-columns: 1fr; }
  .ams-journey-point { padding: 13px 0 13px 18px; }
  .ams-form-section { padding-block: 68px; }
  .ams-form-heading { padding: 31px 22px 24px; }
  .ams-form { padding: 24px 22px 0; }
  .ams-form-grid { grid-template-columns: 1fr; gap: 17px; }
  .ams-field-wide { grid-column: auto; }
  .ams-form-footer { display: flex; }
  .ams-submit { width: 100%; }
  .ams-form-status { margin-inline: 22px; }
  .ams-cta-band { padding-block: 60px; }
  .ams-cta-band-inner { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .ams-shell { width: calc(100% - 22px); }
  .ams-hero-grid { padding-top: 42px; }
  .ams-hero-visual { min-height: 280px; }
  .ams-actions { align-items: stretch; flex-direction: column; }
  .ams-btn { width: 100%; }
  .ams-benefit-grid { grid-template-columns: 1fr; }
  .ams-benefit { min-height: 165px; }
  .ams-intro-panel { min-height: 320px; }
  .ams-intro-note { width: calc(100% - 32px); left: 16px; bottom: 16px; }
  .ams-business-copy { padding: 30px 22px; }
  .ams-business-visual { min-height: 270px; }
  .ams-service-card { padding: 26px 22px; }
  .ams-form-shell { border-radius: 12px; }
  .ams-form-heading h2 { font-size: 28px; }
  .ams-form-heading,
  .ams-form { padding-inline: 16px; }
  .ams-form-status { margin-inline: 16px; }
  .ams-form-assurance { align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  .ams-page *,
  .ams-page *::before,
  .ams-page *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}

/* Premium Rentals and modal-form refinement — v1.0.5 */
.ams-rentals .ams-hero {
  color: var(--ams-ink);
  background: linear-gradient(118deg, #fff 0%, #f5f7fa 56%, #e5ebf1 100%);
  border-top: 1px solid #e5ebf1;
  border-bottom: 1px solid #d7e1eb;
}
.ams-rentals .ams-hero::before {
  opacity: .42;
  background: repeating-radial-gradient(ellipse at 5% 95%, transparent 0 13px, rgba(15,75,143,.11) 14px 15px, transparent 16px 24px);
}
.ams-rentals .ams-hero::after {
  border-color: rgba(15,75,143,.13);
  box-shadow: 0 0 0 60px rgba(15,75,143,.025), 0 0 0 140px rgba(15,75,143,.018);
}
.ams-rentals .ams-hero .ams-kicker { color: var(--ams-blue); }
.ams-rentals .ams-hero h1 { color: var(--ams-navy); }
.ams-rentals .ams-hero h1 span { color: var(--ams-blue); }
.ams-rentals .ams-hero-copy > p:not(.ams-hero-subline) { color: #35455a; }
.ams-rentals .ams-hero .ams-btn-primary { color: #fff; background: var(--ams-blue); border-color: var(--ams-blue); }
.ams-rentals .ams-hero .ams-btn-primary span { color: var(--ams-yellow); }
.ams-rentals .ams-hero .ams-btn-primary:hover { color: #fff; background: var(--ams-blue-dark); }
.ams-rentals .ams-hero .ams-btn-secondary { color: var(--ams-blue); border-color: rgba(15,75,143,.52); }
.ams-rentals .ams-hero .ams-btn-secondary:hover { color: var(--ams-blue-dark); background: rgba(15,75,143,.07); border-color: var(--ams-blue); }
.ams-rentals .ams-hero-visual::before { background: radial-gradient(ellipse, rgba(7,53,109,.22), transparent 66%); }

.ams-europcar .ams-hero {
  background: linear-gradient(110deg, #004d00 0%, #007400 48%, var(--ams-europcar-green) 72%, var(--ams-europcar-green) 100%);
  border-top: 1px solid rgba(0,56,0,.45);
  border-bottom: 1px solid rgba(0,76,0,.5);
}
.ams-europcar .ams-hero::before {
  inset: 0 48% 0 0;
  opacity: .22;
  background: repeating-radial-gradient(ellipse at 5% 95%, transparent 0 13px, rgba(255,255,255,.17) 14px 15px, transparent 16px 24px);
}
.ams-europcar .ams-hero::after {
  border-color: rgba(255,255,255,.22);
  box-shadow: 0 0 0 60px rgba(255,255,255,.035), 0 0 0 140px rgba(255,255,255,.022);
}
.ams-europcar .ams-hero .ams-kicker,
.ams-europcar .ams-hero h1,
.ams-europcar .ams-hero-subline { color: #fff; }
.ams-europcar .ams-hero h1 span { color: var(--ams-yellow); }
.ams-europcar .ams-hero-copy > p:not(.ams-hero-subline) { color: rgba(255,255,255,.94); }
.ams-europcar .ams-hero .ams-btn-primary { color: var(--ams-navy); border-color: var(--ams-yellow); background: var(--ams-yellow); }
.ams-europcar .ams-hero .ams-btn-primary:hover { color: var(--ams-navy); border-color: #fff36b; background: #fff36b; }
.ams-europcar .ams-hero .ams-btn-secondary { color: #fff; border-color: rgba(255,255,255,.68); }
.ams-europcar .ams-hero .ams-btn-secondary:hover { color: #fff; border-color: #fff; background: rgba(255,255,255,.12); }
.ams-europcar .ams-hero-visual::before { background: radial-gradient(ellipse, rgba(0,49,0,.35), transparent 66%); }

.ams-tabs-section { margin-top: -44px; margin-bottom: 30px; }
.ams-tabs {
  width: min(1280px,calc(100% - 24px));
  min-height: 66px;
  gap: 10px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}
.ams-tab {
  min-height: 56px;
  grid-template-columns: 78px minmax(0,1fr) 34px;
  gap: 12px;
  position: relative;
  isolation: isolate;
  padding: 5px 10px;
  border: 1px solid rgba(15,75,143,.13);
  border-radius: 14px;
  overflow: hidden;
  color: var(--ams-ink);
  background: rgba(255,255,255,.95);
  box-shadow: 0 7px 20px rgba(7,53,109,.06);
}
.ams-tab:hover { color: var(--ams-blue); background: #fff; box-shadow: 0 14px 30px rgba(7,53,109,.13); transform: translateY(-3px); }
.ams-tab[aria-current="page"] {
  color: var(--ams-blue-dark);
  border-color: rgba(15,75,143,.38);
  background: linear-gradient(135deg, #fff, #eef5fb);
  box-shadow: 0 12px 30px rgba(7,53,109,.14), inset 0 0 0 1px rgba(255,255,255,.9);
}
.ams-tab-logo {
  width: 78px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0;
  overflow: visible;
  background: transparent;
}
.ams-tab-logo img { width: 100%; height: 44px; object-fit: contain; }
.ams-tab-logo img.ams-tab-europcar { width: 76px; height: 38px; object-fit: contain; }
.ams-tab-copy small { color: #66758a; font-size: 9px; letter-spacing: .1em; opacity: 1; }
.ams-tab-copy strong { color: var(--ams-navy); font-size: 14px; }
.ams-tab-arrow {
  width: 34px;
  height: 34px;
  position: relative;
  justify-self: end;
  border-radius: 50%;
  color: var(--ams-blue);
  background: #eef4fa;
  font-size: 0;
  line-height: 1;
  text-align: center;
  transition: color .2s ease, background-color .2s ease, transform .2s ease;
}
.ams-tab-arrow::before {
  content: "";
  width: 42%;
  height: 2px;
  position: absolute;
  left: 28%;
  top: 50%;
  border-radius: 99px;
  background: currentColor;
  transform: translateY(-50%);
}
.ams-tab-arrow::after {
  content: "";
  width: 21%;
  aspect-ratio: 1;
  position: absolute;
  right: 27%;
  top: 50%;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.ams-tab:hover .ams-tab-arrow,
.ams-tab[aria-current="page"] .ams-tab-arrow { color: var(--ams-navy); background: var(--ams-yellow); transform: translateX(2px); }

.ams-rentals .ams-section-pale { position: relative; overflow: hidden; background: linear-gradient(135deg, #f8fafc, #eaf1f8); }
.ams-rentals .ams-section-pale::before { content: ""; position: absolute; width: 600px; height: 600px; right: -340px; top: -330px; border: 1px solid rgba(15,75,143,.11); border-radius: 50%; box-shadow: 0 0 0 76px rgba(15,75,143,.025), 0 0 0 152px rgba(15,75,143,.018); }
.ams-benefit-layout { display: grid; grid-template-columns: minmax(330px,.78fr) minmax(0,1.42fr); gap: 24px; align-items: stretch; }
.ams-benefit-visual {
  min-height: 520px;
  position: relative;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  border-radius: 18px;
  background: linear-gradient(145deg, var(--ams-blue-dark), var(--ams-blue));
  box-shadow: 0 22px 48px rgba(7,53,109,.18);
}
.ams-benefit-visual::before { content: ""; position: absolute; inset: 22px; border: 1px solid rgba(255,255,255,.16); border-radius: 13px; }
.ams-benefit-orbit { position: absolute; width: 410px; height: 410px; right: -125px; top: -110px; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; box-shadow: 0 0 0 54px rgba(255,255,255,.035), 0 0 0 108px rgba(255,255,255,.025); }
.ams-benefit-visual img { width: 121%; max-width: none; position: relative; z-index: 2; margin: 0 -17% 36px 0; filter: drop-shadow(0 25px 18px rgba(2,25,55,.38)); transition: transform .6s cubic-bezier(.2,.7,.2,1); }
.ams-benefit-visual:hover img { transform: translate3d(-10px,-5px,0) scale(1.035); }
.ams-benefit-layout .ams-benefit-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.ams-benefit-layout .ams-benefit {
  min-height: 118px;
  display: grid;
  grid-template-columns: 42px minmax(0,1fr);
  align-items: center;
  gap: 16px;
  padding: 20px;
  border: 1px solid rgba(15,75,143,.14);
  border-left: 4px solid var(--ams-yellow);
  border-radius: 12px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 8px 20px rgba(7,53,109,.045);
}
.ams-benefit-layout .ams-benefit::after { content: ""; width: 48px; height: 3px; right: 18px; bottom: 15px; border: 0; border-radius: 99px; background: rgba(15,75,143,.1); }
.ams-benefit-layout .ams-benefit:hover { border-color: rgba(15,75,143,.26); border-left-color: var(--ams-yellow); background: var(--ams-blue); box-shadow: 0 16px 32px rgba(7,53,109,.16); transform: translateY(-4px); }
.ams-benefit-layout .ams-benefit:hover h3 { color: #fff; }
.ams-benefit-layout .ams-benefit:hover .ams-benefit-icon { color: var(--ams-yellow); transform: translateY(-2px) scale(1.06); }
.ams-benefit-layout .ams-benefit-icon {
  width: 42px;
  height: 42px;
  margin: 0;
  border: 0;
  border-radius: 0;
  color: var(--ams-blue);
  background: transparent;
  transition: color .25s ease, transform .25s ease;
}
.ams-benefit-layout .ams-benefit-icon::before { font-size: 28px; }
.ams-benefit-layout .ams-benefit h3 { margin: 0; font-size: 15px; line-height: 1.36; transition: color .25s ease; }
.ams-benefit-layout .ams-benefit:last-child { grid-column: 1 / -1; }

.ams-rentals .ams-business-section { padding: 0; }
.ams-rentals .ams-business-section > .ams-shell { width: 100%; max-width: none; }
.ams-rentals .ams-business-panel {
  min-height: 650px;
  border-radius: 0;
  background: linear-gradient(115deg, var(--ams-blue-dark), var(--ams-blue));
  box-shadow: none;
}
.ams-rentals .ams-business-copy { display: flex; flex-direction: column; justify-content: center; padding: 72px max(50px, calc((100vw - 1180px)/2)); }
.ams-rentals .ams-business-copy p { max-width: 610px; }
.ams-rentals .ams-business-visual { min-height: 650px; background: linear-gradient(145deg, rgba(255,255,255,.14), rgba(0,0,0,.08)); }
.ams-rentals .ams-business-visual img { width: min(760px,115%); margin: 0 -8% 48px 0; }

.ams-form-section { position: relative; padding-block: 92px; overflow: hidden; background: linear-gradient(135deg, #eef4fa, #fff); }
.ams-form-section::before { content: ""; position: absolute; width: 450px; height: 450px; left: -260px; bottom: -270px; border: 1px solid rgba(15,75,143,.11); border-radius: 50%; box-shadow: 0 0 0 62px rgba(15,75,143,.025), 0 0 0 124px rgba(15,75,143,.018); }
.ams-form-launcher { width: min(780px,100%); position: relative; z-index: 1; margin: 0 auto; padding: 52px clamp(24px,6vw,76px); border: 1px solid rgba(15,75,143,.15); text-align: center; background: rgba(255,255,255,.92); box-shadow: 0 18px 50px rgba(7,53,109,.1); }
.ams-form-launcher .ams-kicker { justify-content: center; }
.ams-form-launcher h2 { color: var(--ams-blue); text-transform: uppercase; }
.ams-form-launcher p { max-width: 640px; margin: 0 auto 24px; color: var(--ams-muted); }
.ams-form-launcher .ams-btn { min-width: 250px; color: #fff; background: var(--ams-blue); }
.ams-form-launcher .ams-btn span { color: var(--ams-yellow); }
.ams-form-launcher .ams-btn:hover { color: #fff; background: var(--ams-blue-dark); }
body.ams-modal-open { overflow: hidden; }
.ams-modal[hidden] { display: none !important; }
.ams-modal { position: fixed; inset: 0; z-index: 999999; display: grid; place-items: center; padding: 16px; opacity: 0; visibility: hidden; transition: opacity .22s ease, visibility .22s ease; }
.ams-modal.is-open { opacity: 1; visibility: visible; }
.ams-modal-backdrop { position: absolute; inset: 0; background: rgba(5,13,24,.82); backdrop-filter: blur(3px); }
.ams-modal-dialog { width: min(792px,calc(100vw - 32px)); max-height: calc(100vh - 32px); position: relative; z-index: 1; overflow: auto; outline: 0; background: transparent; opacity: 0; transform: translateY(18px) scale(.985); transition: opacity .22s ease, transform .22s ease; }
.ams-modal.is-open .ams-modal-dialog { opacity: 1; transform: none; }
.ams-modal-close { width: 42px; height: 42px; position: absolute; right: 6px; top: 6px; z-index: 3; border: 0; cursor: pointer; color: #111; background: transparent; font: 300 30px/1 Arial,sans-serif; }
.ams-modal-close:hover { color: var(--ams-blue); }
.ams-modal .ams-form-shell { width: 100%; margin: 0; border: 1px solid #d9e3ef; border-radius: 0; background: #fff; box-shadow: none; }
.ams-modal .ams-form-heading { padding: 34px 54px 4px; background: #fff; }
.ams-modal .ams-form-heading h2 { margin: 0; color: var(--ams-blue); font-size: 36px; line-height: 1.1; font-weight: 850; letter-spacing: .045em; text-transform: uppercase; }
.ams-form-title-rule { display: block; width: 70px; height: 3px; margin: 20px auto 22px; border-radius: 99px; background: var(--ams-yellow); }
.ams-modal .ams-form-heading p { margin: -5px auto 19px; font-size: 14px; line-height: 1.5; }
.ams-modal .ams-form { padding: 0; }
.ams-modal .ams-form-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px 26px; padding: 0 42px; }
.ams-modal .ams-field { position: relative; }
.ams-modal .ams-field-label { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.ams-modal .ams-control { min-height: 44px; border: 1.5px solid #cbd9ea; border-radius: 0; background: #fff; box-shadow: none; }
.ams-modal .ams-control:focus-within { border-color: var(--ams-blue); box-shadow: 0 0 0 3px rgba(15,75,143,.1); }
.ams-modal .ams-control > svg { width: 20px; height: 20px; position: absolute; left: 20px; top: 50%; z-index: 2; margin: 0; stroke: #7393b5; transform: translateY(-50%); }
.ams-modal .ams-control input,
.ams-modal .ams-control select,
.ams-modal .ams-control textarea { min-height: 42px; padding: 0 42px 0 52px !important; color: #5b6980; font-size: 15px; font-weight: 600; }
.ams-modal .ams-control input::placeholder,
.ams-modal .ams-control textarea::placeholder { color: #5b6980; opacity: 1; }
.ams-modal .ams-control-message { min-height: 76px; }
.ams-modal .ams-control-message > svg { top: 17px; transform: none; }
.ams-modal .ams-control textarea { min-height: 74px; padding-top: 15px !important; resize: vertical; }
.ams-modal .ams-field-wide { grid-column: 1 / -1; margin-top: 4px; }
.ams-modal .ams-form-footer { display: grid; grid-template-columns: 1fr 1px minmax(300px,42%); gap: 32px; align-items: center; margin-top: 28px; padding: 22px 42px; border-top: 1px solid #dbe3ed; }
.ams-form-contact { display: flex; align-items: center; gap: 16px; color: #5b6980; }
.ams-form-contact-icon { width: 50px; height: 50px; flex: 0 0 50px; display: grid; place-items: center; color: var(--ams-blue); background: #eef4fa; }
.ams-form-contact-icon svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; }
.ams-form-contact strong { display: block; color: var(--ams-blue); font-size: 16px; font-weight: 850; }
.ams-form-contact a { color: #5b6980; font-size: 14px; font-weight: 650; }
.ams-form-divider { width: 1px; height: 44px; background: #cfdbea; }
.ams-modal .ams-submit { width: 100%; max-width: none; min-height: 48px; border: 1px solid var(--ams-blue); border-radius: 0; box-shadow: none; }
.ams-modal .ams-submit:hover { background: var(--ams-blue-dark); box-shadow: none; transform: none; }
.ams-modal .ams-form-status { margin: 0 42px 18px; }

.ams-proof-section { padding-block: 94px; color: #fff; background: linear-gradient(120deg, var(--ams-navy), var(--ams-blue)); }
.ams-proof-grid { display: grid; grid-template-columns: 1.08fr .92fr; gap: 72px; align-items: center; }
.ams-proof-copy { position: relative; padding-left: 90px; }
.ams-quote-mark { position: absolute; left: 0; top: -26px; color: var(--ams-yellow); font: 700 112px/1 Georgia,serif; opacity: .95; }
.ams-proof-copy h2 { color: #fff; }
.ams-testimonial-ready { max-width: 560px; padding: 24px 0 0; border-top: 1px solid rgba(255,255,255,.25); }
.ams-testimonial-ready p { margin-bottom: 8px; color: rgba(255,255,255,.82); font-size: 17px; }
.ams-testimonial-ready small { color: var(--ams-yellow); font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.ams-social-panel { padding: 36px; color: var(--ams-ink); background: #fff; box-shadow: 0 22px 54px rgba(2,25,55,.24); }
.ams-social-panel h3 { margin-bottom: 22px; color: var(--ams-blue); font-size: 25px; }
.ams-social-links { display: grid; gap: 10px; }
.ams-social-links a { min-height: 58px; display: grid; grid-template-columns: 34px 1fr 24px; align-items: center; gap: 13px; padding: 10px 14px; border: 1px solid #d8e3ee; color: var(--ams-navy); background: #f8fafc; transition: color .22s ease, background-color .22s ease, border-color .22s ease, transform .22s ease; }
.ams-social-links a:hover { color: #fff; border-color: var(--ams-blue); background: var(--ams-blue); transform: translateX(4px); }
.ams-social-links i { color: var(--ams-blue); font-size: 20px; text-align: center; transition: color .22s ease; }
.ams-social-links a:hover i { color: var(--ams-yellow); }
.ams-social-links span { font-weight: 750; }
.ams-social-links b { color: var(--ams-yellow); font-size: 20px; font-weight: 500; }
.ams-europcar .ams-proof-section { background: linear-gradient(120deg, #003f00, var(--ams-europcar-green)); }
.ams-europcar .ams-social-panel h3,
.ams-europcar .ams-social-links i { color: var(--ams-europcar-green); }
.ams-europcar .ams-social-links a:hover { border-color: var(--ams-europcar-green); background: var(--ams-europcar-green); }
.ams-europcar .ams-tab[aria-current="page"] { border-color: rgba(0,153,0,.42); }

.ams-motion-ready .ams-tab,
.ams-motion-ready .ams-benefit-visual,
.ams-motion-ready .ams-benefit,
.ams-motion-ready .ams-proof-copy,
.ams-motion-ready .ams-social-panel { opacity: 0; transform: translateY(18px); }
.ams-motion-ready .ams-tab.ams-revealed,
.ams-motion-ready .ams-benefit-visual.ams-revealed,
.ams-motion-ready .ams-benefit.ams-revealed,
.ams-motion-ready .ams-proof-copy.ams-revealed,
.ams-motion-ready .ams-social-panel.ams-revealed { opacity: 1; transform: none; transition: opacity .5s ease calc(var(--ams-index,0) * 45ms), transform .5s cubic-bezier(.2,.7,.2,1) calc(var(--ams-index,0) * 45ms), color .22s ease, background-color .22s ease, border-color .22s ease, box-shadow .22s ease; }

@media (max-width: 1050px) {
  .ams-tabs { min-height: 60px; gap: 7px; padding: 0; }
  .ams-tab { min-height: 54px; grid-template-columns: 64px minmax(0,1fr) 28px; gap: 8px; padding: 4px 8px; }
  .ams-tab-logo { width: 64px; height: 40px; }
  .ams-tab-logo img { height: 38px; }
  .ams-tab-logo img.ams-tab-europcar { width: 61px; height: 35px; }
  .ams-tab-arrow { width: 28px; height: 28px; }
  .ams-benefit-layout { grid-template-columns: 1fr; }
  .ams-benefit-visual { min-height: 390px; }
  .ams-benefit-visual img { width: min(720px,95%); margin: 0 -5% 18px auto; }
  .ams-rentals .ams-business-panel,
  .ams-rentals .ams-business-visual { min-height: 580px; }
  .ams-rentals .ams-business-copy { padding: 58px 36px; }
}

@media (max-width: 760px) {
  .ams-tabs-section { margin-top: -20px; }
  .ams-tabs { min-height: 0; gap: 6px; padding: 0; border-radius: 0; }
  .ams-tab { min-height: 54px; grid-template-columns: 82px minmax(0,1fr) 28px; padding: 4px 10px; border-radius: 10px; }
  .ams-tab-logo { width: 82px; height: 42px; }
  .ams-tab-logo img { height: 40px; }
  .ams-tab-logo img.ams-tab-europcar { width: 76px; height: 36px; }
  .ams-benefit-layout .ams-benefit-grid { grid-template-columns: 1fr; }
  .ams-benefit-layout .ams-benefit:last-child { grid-column: auto; }
  .ams-benefit-visual { min-height: 320px; }
  .ams-benefit-visual img { width: 115%; margin: 0 -18% 18px 0; }
  .ams-rentals .ams-business-panel { min-height: 0; }
  .ams-rentals .ams-business-copy { padding: 56px 28px; }
  .ams-rentals .ams-business-visual { min-height: 380px; }
  .ams-rentals .ams-business-visual img { width: 115%; margin: 0 -18% 24px 0; }
  .ams-form-section { padding-block: 68px; }
  .ams-form-launcher { padding: 40px 22px; }
  .ams-form-launcher .ams-btn { width: 100%; min-width: 0; }
  .ams-modal { padding: 10px; }
  .ams-modal-dialog { width: calc(100vw - 20px); max-height: calc(100vh - 20px); }
  .ams-modal .ams-form-heading { padding: 30px 42px 4px; }
  .ams-modal .ams-form-heading h2 { font-size: 29px; }
  .ams-modal .ams-form-grid { grid-template-columns: 1fr; gap: 12px; padding: 0 18px; }
  .ams-modal .ams-field-wide { grid-column: auto; }
  .ams-modal .ams-form-footer { grid-template-columns: 1fr; gap: 16px; margin-top: 22px; padding: 20px 18px; }
  .ams-form-divider { display: none; }
  .ams-proof-section { padding-block: 72px; }
  .ams-proof-grid { grid-template-columns: 1fr; gap: 38px; }
  .ams-proof-copy { padding-left: 0; padding-top: 60px; }
  .ams-quote-mark { top: -30px; }
  .ams-social-panel { padding: 26px 20px; }
}

@media (max-width: 480px) {
  .ams-rentals .ams-hero h1 span { color: var(--ams-blue); }
  .ams-benefit-visual { min-height: 280px; }
  .ams-benefit-layout .ams-benefit { min-height: 108px; padding: 17px; }
  .ams-modal-close { right: 1px; top: 1px; }
  .ams-modal .ams-form-heading { padding-inline: 36px; }
  .ams-modal .ams-form-heading h2 { font-size: 25px; }
  .ams-modal .ams-control input,
  .ams-modal .ams-control select,
  .ams-modal .ams-control textarea { font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .ams-motion-ready .ams-tab,
  .ams-motion-ready .ams-benefit-visual,
  .ams-motion-ready .ams-benefit,
  .ams-motion-ready .ams-proof-copy,
  .ams-motion-ready .ams-social-panel { opacity: 1 !important; transform: none !important; }
}

/* ANSA Rentals reference-layout refinement — v1.0.8 */
.ams-rentals-solutions {
  min-height: 590px;
  display: grid;
  grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr);
  background: #fff;
}
.ams-rentals-solutions-media { min-height: 590px; position: relative; overflow: hidden; background: #dfe7ef; }
.ams-rentals-solutions-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 70%, rgba(255,255,255,.12)); pointer-events: none; }
.ams-rentals-solutions-media img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: 53% center; transition: transform .8s cubic-bezier(.2,.7,.2,1); }
.ams-rentals-solutions-media:hover img { transform: scale(1.025); }
.ams-rentals-solutions-copy { display: flex; flex-direction: column; justify-content: center; padding: 68px max(48px,calc((100vw - 1180px)/2)); }
.ams-rentals-solutions-copy h2 { max-width: 620px; color: var(--ams-blue); }
.ams-rentals-solutions-copy > p { max-width: 650px; margin-bottom: 13px; color: #445268; font-size: 16px; line-height: 1.68; }
.ams-rental-feature-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; margin-top: 28px; }
.ams-rental-feature { min-width: 0; }
.ams-rental-icon { width: 50px; height: 50px; display: grid; place-items: center; margin-bottom: 14px; border: 1.5px solid #c4d7ec; border-radius: 50%; color: var(--ams-blue); background: #fff; transition: color .24s ease, border-color .24s ease, background-color .24s ease, transform .24s ease; }
.ams-rental-icon::before { font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 6 Free", "Font Awesome 5 Free"; font-size: 22px; font-weight: 300; line-height: 1; }
.ams-rental-feature:nth-child(1) .ams-rental-icon::before { content: "\f073"; }
.ams-rental-feature:nth-child(2) .ams-rental-icon::before { content: "\f1de"; }
.ams-rental-feature:nth-child(3) .ams-rental-icon::before { content: "\f508"; }
.ams-rental-feature:nth-child(4) .ams-rental-icon::before { content: "\f085"; }
.ams-rental-feature:hover .ams-rental-icon { color: var(--ams-navy); border-color: var(--ams-yellow); background: var(--ams-yellow); transform: translateY(-3px); }
.ams-rental-feature h3 { margin: 0; color: var(--ams-blue); font-size: 13px; line-height: 1.38; font-weight: 720; }

.ams-rental-advantages { position: relative; padding-block: 82px 92px; overflow: hidden; background: linear-gradient(180deg,#f8fafc,#eef4fa); }
.ams-rental-advantages::before { content: ""; width: 510px; height: 510px; position: absolute; right: -330px; top: -355px; border: 1px solid rgba(15,75,143,.11); border-radius: 50%; box-shadow: 0 0 0 68px rgba(15,75,143,.02),0 0 0 136px rgba(15,75,143,.015); }
.ams-rental-section-head { position: relative; margin: 0 auto 32px; text-align: center; }
.ams-rental-section-head .ams-kicker { justify-content: center; }
.ams-rental-section-head h2 { margin-bottom: 0; color: var(--ams-blue); }
.ams-rental-advantages-grid { position: relative; display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: 14px; }
.ams-rental-advantage-card { grid-column: span 3; min-height: 155px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 22px 18px; border: 1px solid rgba(15,75,143,.11); text-align: center; background: rgba(255,255,255,.96); box-shadow: 0 10px 28px rgba(7,53,109,.065); transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease; }
.ams-rental-advantage-card:nth-child(n+5) { grid-column: span 4; }
.ams-rental-advantage-card:hover { border-color: rgba(15,75,143,.27); box-shadow: 0 18px 38px rgba(7,53,109,.13); transform: translateY(-5px); }
.ams-rental-advantage-card .ams-rental-icon { width: 48px; height: 48px; margin-bottom: 12px; border: 0; color: var(--ams-blue); background: transparent; }
.ams-rental-advantage-card:nth-child(1) .ams-rental-icon::before { content: "\f073"; }
.ams-rental-advantage-card:nth-child(2) .ams-rental-icon::before { content: "\f1b9"; }
.ams-rental-advantage-card:nth-child(3) .ams-rental-icon::before { content: "\f63c"; }
.ams-rental-advantage-card:nth-child(4) .ams-rental-icon::before { content: "\f1de"; }
.ams-rental-advantage-card:nth-child(5) .ams-rental-icon::before { content: "\f7d9"; }
.ams-rental-advantage-card:nth-child(6) .ams-rental-icon::before { content: "\f590"; }
.ams-rental-advantage-card:nth-child(7) .ams-rental-icon::before { content: "\f201"; }
.ams-rental-advantage-card .ams-rental-icon::before { font-size: 31px; }
.ams-rental-advantage-card:hover .ams-rental-icon { color: var(--ams-navy); transform: translateY(-2px) scale(1.05); }
.ams-rental-advantage-card h3 { max-width: 235px; margin: 0; color: var(--ams-blue); font-size: 15px; line-height: 1.38; font-weight: 720; }

.ams-rentals .ams-business-panel { min-height: 450px; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); }
.ams-rentals .ams-business-copy { padding-top: 64px; padding-bottom: 64px; }
.ams-rentals .ams-business-copy .ams-kicker { color: #fff; }
.ams-rentals .ams-business-copy .ams-kicker::before { background: var(--ams-yellow); }
.ams-rentals .ams-business-copy h2 { max-width: 540px; }
.ams-rentals .ams-business-copy p { max-width: 590px; }
.ams-rentals .ams-business-visual { min-height: 450px; isolation: isolate; }
.ams-rentals .ams-business-visual::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(140deg,rgba(255,255,255,.12),transparent 60%); }
.ams-business-orbit { width: 390px; height: 390px; position: absolute; right: -90px; top: 20px; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; box-shadow: 0 0 0 48px rgba(255,255,255,.025),0 0 0 96px rgba(255,255,255,.018); }
.ams-rentals .ams-business-visual img { width: min(670px,106%); margin: 0 -5% 30px 0; }

.ams-rental-trust { padding-block: 82px 88px; overflow: hidden; background: #fff; }
.ams-rental-trust-grid { display: grid; grid-template-columns: 1fr 1fr 1.14fr; align-items: stretch; gap: 18px; }
.ams-rental-proof-card,
.ams-rental-social-card { min-height: 340px; position: relative; padding: 34px; border: 1px solid rgba(15,75,143,.11); background: #f8fafc; box-shadow: 0 10px 28px rgba(7,53,109,.06); }
.ams-rental-proof-card h2,
.ams-rental-social-card h2 { margin-bottom: 22px; color: var(--ams-blue); font-size: clamp(28px,2.3vw,37px); }
.ams-rental-proof-card .ams-quote-mark { position: static; display: block; height: 48px; margin-bottom: 6px; font-size: 78px; line-height: .9; }
.ams-rental-proof-card .ams-testimonial-ready { padding-top: 18px; border-top-color: #d9e3ee; }
.ams-rental-proof-card .ams-testimonial-ready p { color: #4d5d72; }
.ams-rental-proof-card .ams-testimonial-ready small { color: var(--ams-blue); }
.ams-rental-social-card > p { color: var(--ams-muted); font-size: 15px; }
.ams-rental-social-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.ams-rental-social-links a { width: 48px; height: 48px; display: inline-grid; place-items: center; padding: 0; border: 2px solid var(--ams-blue); border-radius: 50%; color: var(--ams-yellow); background: var(--ams-blue); font-size: 18px; line-height: 1; transition: color .22s ease, background-color .22s ease, border-color .22s ease, transform .22s ease; }
.ams-rental-social-links a:hover { color: var(--ams-blue); border-color: var(--ams-yellow); background: var(--ams-yellow); transform: translateY(-3px); }
.ams-rental-trust-image { min-height: 340px; position: relative; margin: 0; overflow: hidden; background: #e9eef4; }
.ams-rental-trust-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(255,255,255,.24),transparent 35%); pointer-events: none; }
.ams-rental-trust-image img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: 58% center; transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.ams-rental-trust-image:hover img { transform: scale(1.025); }

.ams-rentals .ams-form-section { padding: 0 0 76px; overflow: visible; background: #fff; }
.ams-rentals .ams-form-section::before { display: none; }
.ams-rentals .ams-form-launcher { width: min(1180px,calc(100% - 48px)); display: grid; grid-template-columns: 66px minmax(0,1fr) auto; grid-template-rows: auto auto; gap: 2px 22px; align-items: center; margin: -30px auto 0; padding: 24px 28px; border-color: rgba(15,75,143,.13); text-align: left; background: #fff; box-shadow: 0 18px 46px rgba(7,53,109,.13); }
.ams-rentals .ams-form-launcher .ams-kicker { width: 62px; height: 62px; grid-column: 1; grid-row: 1 / span 2; display: grid; place-items: center; margin: 0; border-radius: 50%; color: #fff; background: var(--ams-blue); font-size: 0; }
.ams-rentals .ams-form-launcher .ams-kicker::before { display: none; }
.ams-form-launcher-icon { width: 29px; height: 29px; display: block; margin: 0; fill: none; stroke: #fff; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; transform: none; }
.ams-rentals .ams-form-launcher h2 { grid-column: 2; grid-row: 2; margin: 0; color: var(--ams-blue); font-size: clamp(25px,2.5vw,36px); line-height: 1.08; }
.ams-rentals .ams-form-launcher::before { content: "Ready to make your move?"; grid-column: 2; grid-row: 1; color: var(--ams-blue); font-size: 11px; line-height: 1.2; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.ams-rentals .ams-form-launcher .ams-btn { min-width: 230px; grid-column: 3; grid-row: 1 / span 2; margin: 0; color: var(--ams-navy); background: var(--ams-yellow); }
.ams-rentals .ams-form-launcher .ams-btn span { color: var(--ams-navy); }
.ams-rentals .ams-form-launcher .ams-btn:hover { color: var(--ams-navy); background: #fff36b; }

.ams-motion-ready .ams-rentals-solutions-media,
.ams-motion-ready .ams-rental-feature,
.ams-motion-ready .ams-rental-advantage-card,
.ams-motion-ready .ams-rental-proof-card,
.ams-motion-ready .ams-rental-social-card,
.ams-motion-ready .ams-rental-trust-image { opacity: 0; transform: translateY(18px); }
.ams-motion-ready .ams-rentals-solutions-media.ams-revealed,
.ams-motion-ready .ams-rental-feature.ams-revealed,
.ams-motion-ready .ams-rental-advantage-card.ams-revealed,
.ams-motion-ready .ams-rental-proof-card.ams-revealed,
.ams-motion-ready .ams-rental-social-card.ams-revealed,
.ams-motion-ready .ams-rental-trust-image.ams-revealed { opacity: 1; transform: none; transition: opacity .5s ease calc(var(--ams-index,0) * 40ms), transform .5s cubic-bezier(.2,.7,.2,1) calc(var(--ams-index,0) * 40ms), box-shadow .25s ease, border-color .25s ease; }

@media (max-width: 1050px) {
  .ams-rentals-solutions { grid-template-columns: .86fr 1.14fr; }
  .ams-rentals-solutions-copy { padding: 56px 34px; }
  .ams-rental-feature-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ams-rental-advantage-card,
  .ams-rental-advantage-card:nth-child(n+5) { grid-column: span 6; }
  .ams-rental-advantage-card:last-child { grid-column: 4 / span 6; }
  .ams-rentals .ams-business-panel { min-height: 520px; }
  .ams-rentals .ams-business-visual { min-height: 520px; }
  .ams-rental-trust-grid { grid-template-columns: 1fr 1fr; }
  .ams-rental-trust-image { min-height: 330px; grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  .ams-rentals-solutions { min-height: 0; grid-template-columns: 1fr; }
  .ams-rentals-solutions-media { min-height: 310px; }
  .ams-rentals-solutions-copy { padding: 48px 24px 56px; }
  .ams-rental-feature-grid { gap: 20px 14px; }
  .ams-rental-advantages { padding-block: 64px 70px; }
  .ams-rental-advantages-grid { grid-template-columns: 1fr; gap: 11px; }
  .ams-rental-advantage-card,
  .ams-rental-advantage-card:nth-child(n+5),
  .ams-rental-advantage-card:last-child { min-height: 125px; grid-column: 1; }
  .ams-rentals .ams-business-panel { min-height: 0; grid-template-columns: 1fr; }
  .ams-rentals .ams-business-copy { padding: 54px 24px; }
  .ams-rentals .ams-business-visual { min-height: 340px; }
  .ams-rentals .ams-business-visual img { width: 116%; margin: 0 -18% 20px 0; }
  .ams-rental-trust { padding-block: 62px 72px; }
  .ams-rental-trust-grid { grid-template-columns: 1fr; }
  .ams-rental-proof-card,
  .ams-rental-social-card { min-height: 0; padding: 28px 24px; }
  .ams-rental-trust-image { min-height: 310px; grid-column: auto; }
  .ams-rentals .ams-form-section { padding-bottom: 60px; }
  .ams-rentals .ams-form-launcher { width: calc(100% - 32px); grid-template-columns: 54px minmax(0,1fr); grid-template-rows: auto auto auto; gap: 2px 16px; margin-top: -22px; padding: 22px 20px; }
  .ams-rentals .ams-form-launcher .ams-kicker { width: 52px; height: 52px; grid-row: 1 / span 2; }
  .ams-rentals .ams-form-launcher .ams-btn { width: 100%; min-width: 0; grid-column: 1 / -1; grid-row: 3; margin-top: 18px; }
}

@media (max-width: 480px) {
  .ams-rental-feature-grid { grid-template-columns: 1fr; }
  .ams-rental-feature { display: grid; grid-template-columns: 44px 1fr; align-items: center; gap: 12px; }
  .ams-rental-feature .ams-rental-icon { width: 44px; height: 44px; margin: 0; }
  .ams-rental-social-links { display: flex; }
}

@media (prefers-reduced-motion: reduce) {
  .ams-motion-ready .ams-rentals-solutions-media,
  .ams-motion-ready .ams-rental-feature,
  .ams-motion-ready .ams-rental-advantage-card,
  .ams-motion-ready .ams-rental-proof-card,
  .ams-motion-ready .ams-rental-social-card,
  .ams-motion-ready .ams-rental-trust-image { opacity: 1 !important; transform: none !important; }
}

/* Europcar reference-layout refinement — v1.0.10 */
.ams-europcar-intro {
  padding-block: 88px 96px;
  background: #fff;
}
.ams-europcar-intro-grid {
  grid-template-columns: minmax(0,.86fr) minmax(430px,1.14fr);
  gap: clamp(56px,8vw,110px);
}
.ams-europcar-intro .ams-intro-copy {
  max-width: 540px;
}
.ams-europcar-intro .ams-intro-copy p:first-child {
  color: var(--ams-blue);
  font-size: clamp(22px,2.15vw,29px);
  line-height: 1.52;
  font-weight: 690;
}
.ams-europcar-intro .ams-intro-copy p:last-child {
  max-width: 500px;
  margin-top: 20px;
  color: #5b6676;
  font-size: 16px;
  line-height: 1.7;
}
.ams-europcar-intro-panel {
  min-height: 470px;
  border: 1px solid rgba(15,75,143,.08);
  border-radius: 20px;
  background: linear-gradient(145deg,#edf4fa 0%,#f9fbfd 100%);
  box-shadow: 0 16px 44px rgba(7,53,109,.09);
}
.ams-europcar-intro-panel::before {
  width: 430px;
  height: 430px;
  right: -105px;
  top: -122px;
  border-color: rgba(15,75,143,.065);
}
.ams-europcar-intro-panel img {
  width: 107%;
  max-width: none;
  max-height: 370px;
  margin-right: -7%;
  transition: transform .65s cubic-bezier(.2,.7,.2,1);
}
.ams-europcar-intro-panel:hover img { transform: translateX(-8px) scale(1.025); }

.ams-europcar-options {
  position: relative;
  padding-block: 78px 94px;
  overflow: hidden;
  background: linear-gradient(180deg,#f7f9fc 0%,#eef4fa 100%);
}
.ams-europcar-options::before {
  content: "";
  width: 520px;
  height: 520px;
  position: absolute;
  left: -385px;
  top: -370px;
  border: 1px solid rgba(0,153,0,.09);
  border-radius: 50%;
  box-shadow: 0 0 0 72px rgba(0,153,0,.016),0 0 0 144px rgba(0,153,0,.012);
}
.ams-europcar-options .ams-section-head {
  position: relative;
  margin-bottom: 34px;
}
.ams-europcar-options .ams-section-head h2 {
  margin-bottom: 8px;
  color: var(--ams-blue);
}
.ams-europcar-options .ams-section-head p { margin-bottom: 0; font-size: 15px; }
.ams-europcar-options .ams-service-grid {
  position: relative;
  grid-template-columns: repeat(12,minmax(0,1fr));
  gap: 14px;
}
.ams-europcar-options .ams-service-card {
  min-height: 156px;
  grid-column: span 4;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 22px 23px;
  border-color: rgba(15,75,143,.1);
  border-radius: 7px;
  box-shadow: 0 9px 25px rgba(7,53,109,.055);
}
.ams-europcar-options .ams-service-card::before {
  content: "";
  height: 3px;
  position: absolute;
  left: 0;
  right: 100%;
  top: 0;
  background: var(--ams-europcar-green);
  transition: right .35s ease;
}
.ams-europcar-options .ams-service-card:hover {
  border-color: rgba(0,153,0,.24);
  box-shadow: 0 18px 38px rgba(7,53,109,.12);
  transform: translateY(-5px);
}
.ams-europcar-options .ams-service-card:hover::before { right: 0; }
.ams-europcar-options .ams-service-card:nth-child(7) { grid-column: 5 / span 4; }
.ams-europcar-options .ams-service-number {
  right: 18px;
  top: 15px;
  color: rgba(15,75,143,.11);
  font-size: 34px;
}
.ams-europcar-options .ams-benefit-icon {
  width: 38px;
  height: 38px;
  margin: 0 0 16px;
  border-width: 1.5px;
}
.ams-europcar-options .ams-benefit-icon::before { font-size: 17px; }
.ams-europcar-options .ams-service-card h3 {
  max-width: 82%;
  margin: 0;
  color: var(--ams-navy);
  font-size: 15px;
  line-height: 1.35;
  font-weight: 720;
}

.ams-europcar-cta { padding-block: 36px; background: linear-gradient(112deg,var(--ams-blue-dark),var(--ams-blue)); }
.ams-europcar-cta .ams-cta-band-inner { grid-template-columns: minmax(0,1fr) auto; gap: 44px; }
.ams-europcar-cta h2 { margin-bottom: 7px; font-size: clamp(26px,2.6vw,36px); }
.ams-europcar-cta p { max-width: 780px; font-size: 14px; line-height: 1.55; }
.ams-europcar-cta .ams-actions { flex-wrap: nowrap; }
.ams-europcar-cta .ams-btn { min-width: 142px; min-height: 48px; padding-block: 12px; }
.ams-europcar-cta .ams-btn-primary { color: #fff; border-color: var(--ams-europcar-green); background: var(--ams-europcar-green); }
.ams-europcar-cta .ams-btn-primary:hover { color: #fff; border-color: #007d00; background: #007d00; }
.ams-europcar-cta .ams-btn-secondary { color: #fff; border-color: rgba(255,255,255,.7); background: transparent; }
.ams-europcar-cta .ams-btn-secondary:hover { color: var(--ams-navy); border-color: #fff; background: #fff; }

.ams-europcar-proof {
  position: relative;
  padding-block: 72px 78px;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(115deg,#006d00 0%,var(--ams-europcar-green) 56%,#00a50b 100%);
}
.ams-europcar-proof::before {
  content: "";
  width: 430px;
  height: 430px;
  position: absolute;
  left: -220px;
  bottom: -286px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 50%;
  box-shadow: 0 0 0 62px rgba(255,255,255,.035),0 0 0 124px rgba(255,255,255,.02);
}
.ams-europcar-proof-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0,1.18fr) minmax(230px,.78fr) minmax(260px,.82fr);
  gap: 34px;
  align-items: stretch;
}
.ams-europcar-review {
  min-height: 330px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 28px 38px 28px 82px;
  border-right: 1px solid rgba(255,255,255,.34);
}
.ams-europcar-review .ams-quote-mark { left: 0; top: 24px; color: var(--ams-yellow); font-size: 96px; }
.ams-europcar-review h2 { max-width: 440px; margin-bottom: 22px; color: #fff; font-size: clamp(30px,3vw,44px); }
.ams-europcar-review .ams-testimonial-ready { max-width: 480px; border-top-color: rgba(255,255,255,.36); }
.ams-europcar-review .ams-testimonial-ready p { color: rgba(255,255,255,.9); }
.ams-europcar-social {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 28px 0;
}
.ams-europcar-social .ams-kicker { margin-bottom: 9px; color: #fff; }
.ams-europcar-social .ams-kicker::before { background: var(--ams-yellow); }
.ams-europcar-social h2 { margin-bottom: 24px; color: #fff; font-size: clamp(27px,2.4vw,35px); }
.ams-europcar-social .ams-social-links a {
  min-height: 54px;
  border: 0;
  border-radius: 7px;
  color: var(--ams-navy);
  background: #fff;
  box-shadow: 0 10px 24px rgba(0,48,0,.14);
}
.ams-europcar-social .ams-social-links a:hover { color: #fff; background: var(--ams-blue); transform: translateX(4px); }
.ams-europcar-social .ams-social-links i { color: var(--ams-blue); }
.ams-europcar-social .ams-social-links a:hover i { color: var(--ams-yellow); }
.ams-europcar-destination {
  min-height: 330px;
  position: relative;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.38);
  border-radius: 17px;
  background: #b8d8e7;
  box-shadow: 0 20px 44px rgba(0,48,0,.22);
}
.ams-europcar-destination img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
  object-position: center;
  transition: transform .75s cubic-bezier(.2,.7,.2,1);
}
.ams-europcar-destination:hover img { transform: scale(1.035); }

.ams-motion-ready .ams-europcar-intro-panel,
.ams-motion-ready .ams-europcar-options .ams-service-card,
.ams-motion-ready .ams-europcar-review,
.ams-motion-ready .ams-europcar-social,
.ams-motion-ready .ams-europcar-destination { opacity: 0; transform: translateY(18px); }
.ams-motion-ready .ams-europcar-intro-panel.ams-revealed,
.ams-motion-ready .ams-europcar-options .ams-service-card.ams-revealed,
.ams-motion-ready .ams-europcar-review.ams-revealed,
.ams-motion-ready .ams-europcar-social.ams-revealed,
.ams-motion-ready .ams-europcar-destination.ams-revealed { opacity: 1; transform: none; transition: opacity .5s ease calc(var(--ams-index,0) * 42ms),transform .5s cubic-bezier(.2,.7,.2,1) calc(var(--ams-index,0) * 42ms),box-shadow .25s ease,border-color .25s ease; }

@media (max-width: 1050px) {
  .ams-europcar-intro-grid { grid-template-columns: minmax(0,.9fr) minmax(380px,1.1fr); gap: 42px; }
  .ams-europcar-options .ams-service-card { grid-column: span 6; }
  .ams-europcar-options .ams-service-card:nth-child(7) { grid-column: 4 / span 6; }
  .ams-europcar-cta .ams-cta-band-inner { gap: 26px; }
  .ams-europcar-proof-grid { grid-template-columns: 1fr 1fr; }
  .ams-europcar-destination { min-height: 360px; grid-column: 1 / -1; }
  .ams-europcar-review { padding-right: 30px; }
}

@media (max-width: 760px) {
  .ams-europcar-intro { padding-block: 64px 70px; }
  .ams-europcar-intro-grid { grid-template-columns: 1fr; gap: 34px; }
  .ams-europcar-intro-panel { min-height: 350px; }
  .ams-europcar-intro-panel img { width: 112%; margin-right: -12%; }
  .ams-europcar-options { padding-block: 62px 70px; }
  .ams-europcar-options .ams-service-grid { grid-template-columns: 1fr; }
  .ams-europcar-options .ams-service-card,
  .ams-europcar-options .ams-service-card:nth-child(7) { min-height: 144px; grid-column: 1; }
  .ams-europcar-cta { padding-block: 48px; }
  .ams-europcar-cta .ams-cta-band-inner { grid-template-columns: 1fr; gap: 24px; }
  .ams-europcar-cta .ams-actions { flex-wrap: wrap; }
  .ams-europcar-proof { padding-block: 62px 68px; }
  .ams-europcar-proof-grid { grid-template-columns: 1fr; gap: 14px; }
  .ams-europcar-review { min-height: 0; padding: 76px 0 38px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.3); }
  .ams-europcar-review .ams-quote-mark { top: 8px; }
  .ams-europcar-social { padding: 34px 0; }
  .ams-europcar-destination { min-height: 320px; grid-column: auto; }
}

@media (max-width: 480px) {
  .ams-europcar-intro-panel { min-height: 300px; padding: 18px; }
  .ams-europcar-intro .ams-intro-copy p:first-child { font-size: 21px; }
  .ams-europcar-options .ams-service-card { padding: 20px; }
  .ams-europcar-cta .ams-actions { align-items: stretch; flex-direction: column; }
  .ams-europcar-cta .ams-btn { width: 100%; }
  .ams-europcar-destination { min-height: 280px; }
}

@media (prefers-reduced-motion: reduce) {
  .ams-motion-ready .ams-europcar-intro-panel,
  .ams-motion-ready .ams-europcar-options .ams-service-card,
  .ams-motion-ready .ams-europcar-review,
  .ams-motion-ready .ams-europcar-social,
  .ams-motion-ready .ams-europcar-destination { opacity: 1 !important; transform: none !important; }
}

/* Europcar alignment with the ANSA Rentals body system — v1.0.11 */
.ams-europcar-solutions {
  min-height: 560px;
  display: grid;
  grid-template-columns: minmax(0,.96fr) minmax(0,1.04fr);
  background: #fff;
}
.ams-europcar-solutions-media {
  min-height: 560px;
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  overflow: hidden;
  background: linear-gradient(145deg,#e8f0f8,#f8fbfe);
}
.ams-europcar-solutions-media::before {
  content: "";
  width: 500px;
  height: 500px;
  position: absolute;
  right: -130px;
  top: -150px;
  border: 58px solid rgba(15,75,143,.055);
  border-radius: 50%;
}
.ams-europcar-solutions-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,transparent 72%,rgba(255,255,255,.2));
  pointer-events: none;
}
.ams-europcar-solutions-media img {
  width: min(720px,100%);
  max-width: none;
  position: relative;
  z-index: 1;
  margin: 0 0 54px;
  object-fit: contain;
  filter: drop-shadow(0 22px 20px rgba(7,53,109,.2));
  transition: transform .7s cubic-bezier(.2,.7,.2,1);
}
.ams-europcar-solutions-media:hover img { transform: translateX(-8px) scale(1.025); }
.ams-europcar-solutions-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 68px max(48px,calc((100vw - 1180px)/2));
}
.ams-europcar-solutions-copy h2 {
  max-width: 670px;
  margin-bottom: 24px;
  color: var(--ams-blue);
  font-size: clamp(29px,3vw,42px);
  line-height: 1.18;
}
.ams-europcar-solutions-copy p {
  max-width: 620px;
  margin: 0;
  color: #4b5a6d;
  font-size: 16px;
  line-height: 1.72;
}

.ams-europcar-options .ams-rental-section-head .ams-kicker { justify-content: center; }
.ams-europcar-options .ams-rental-section-head h2 { color: var(--ams-blue); }
.ams-europcar-options .ams-rental-advantage-card .ams-rental-icon { color: var(--ams-blue); }
.ams-europcar-options .ams-rental-advantage-card:nth-child(1) .ams-rental-icon::before { content: "\f1b9"; }
.ams-europcar-options .ams-rental-advantage-card:nth-child(2) .ams-rental-icon::before { content: "\f0b1"; }
.ams-europcar-options .ams-rental-advantage-card:nth-child(3) .ams-rental-icon::before { content: "\f5af"; }
.ams-europcar-options .ams-rental-advantage-card:nth-child(4) .ams-rental-icon::before { content: "\f0c0"; }
.ams-europcar-options .ams-rental-advantage-card:nth-child(5) .ams-rental-icon::before { content: "\f5e4"; }
.ams-europcar-options .ams-rental-advantage-card:nth-child(6) .ams-rental-icon::before { content: "\f500"; }
.ams-europcar-options .ams-rental-advantage-card:nth-child(7) .ams-rental-icon::before { content: "\f5a0"; }
.ams-europcar-options .ams-rental-advantage-card:hover {
  border-color: rgba(0,153,0,.28);
  box-shadow: 0 18px 38px rgba(0,85,0,.1);
}
.ams-europcar-options .ams-rental-advantage-card:hover .ams-rental-icon { color: var(--ams-europcar-green); }

.ams-europcar-destinations {
  min-height: 330px;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto repeat(3,minmax(82px,1fr));
  gap: 8px;
}
.ams-europcar-destinations > h3 {
  margin: 0 0 4px;
  color: #fff;
  font-size: 20px;
  line-height: 1.2;
}
.ams-europcar-destination-card {
  min-height: 82px;
  position: relative;
  margin: 0;
  overflow: hidden;
  border: 0;
  border-radius: 11px;
  background: #b8d8e7;
  box-shadow: 0 12px 28px rgba(0,48,0,.17);
}
.ams-europcar-destination-card::after {
  content: "";
  position: absolute;
  inset: 35% 0 0;
  background: linear-gradient(transparent,rgba(0,34,12,.72));
  pointer-events: none;
}
.ams-europcar-destination-card img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
  transition: transform .65s cubic-bezier(.2,.7,.2,1);
}
.ams-europcar-destination-card:first-of-type img { object-position: center 42%; }
.ams-europcar-destination-card:nth-of-type(2) img { object-position: center 52%; }
.ams-europcar-destination-card:last-of-type img { object-position: center 54%; }
.ams-europcar-destination-card:hover img { transform: scale(1.045); }
.ams-europcar-destination-card figcaption {
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 10px;
  z-index: 1;
  color: #fff;
  font-size: 13px;
  line-height: 1.2;
  font-weight: 760;
  text-shadow: 0 1px 8px rgba(0,0,0,.5);
}

.ams-motion-ready .ams-europcar-solutions-media,
.ams-motion-ready .ams-europcar-solutions-copy,
.ams-motion-ready .ams-europcar-destination-card { opacity: 0; transform: translateY(18px); }
.ams-motion-ready .ams-europcar-solutions-media.ams-revealed,
.ams-motion-ready .ams-europcar-solutions-copy.ams-revealed,
.ams-motion-ready .ams-europcar-destination-card.ams-revealed { opacity: 1; transform: none; transition: opacity .5s ease calc(var(--ams-index,0) * 42ms),transform .5s cubic-bezier(.2,.7,.2,1) calc(var(--ams-index,0) * 42ms),box-shadow .25s ease,border-color .25s ease; }

@media (max-width: 1050px) {
  .ams-europcar-solutions { grid-template-columns: minmax(0,.88fr) minmax(0,1.12fr); }
  .ams-europcar-solutions-copy { padding: 56px 34px; }
  .ams-europcar-solutions-media img { width: 100%; margin-right: 0; }
  .ams-europcar-destinations {
    min-height: 245px;
    grid-column: 1 / -1;
    grid-template-columns: repeat(3,minmax(0,1fr));
    grid-template-rows: auto 1fr;
    gap: 12px;
  }
  .ams-europcar-destinations > h3 { grid-column: 1 / -1; }
  .ams-europcar-destination-card { min-height: 210px; }
}

@media (max-width: 760px) {
  .ams-europcar-solutions { min-height: 0; grid-template-columns: 1fr; }
  .ams-europcar-solutions-media { min-height: 330px; }
  .ams-europcar-solutions-media img { width: 100%; margin: 0 0 24px; }
  .ams-europcar-solutions-copy { padding: 48px 24px 58px; }
  .ams-europcar-solutions-copy h2 { font-size: clamp(28px,8vw,36px); }
  .ams-europcar-destinations {
    min-height: 0;
    grid-column: auto;
    grid-template-columns: 1fr;
    grid-template-rows: auto repeat(3,200px);
    gap: 10px;
    margin-top: 18px;
  }
  .ams-europcar-destinations > h3 { grid-column: auto; }
  .ams-europcar-destination-card { min-height: 200px; }
}

@media (max-width: 480px) {
  .ams-europcar-solutions-media { min-height: 290px; }
  .ams-europcar-solutions-copy { padding-inline: 20px; }
  .ams-europcar-destinations { grid-template-rows: auto repeat(3,180px); }
  .ams-europcar-destination-card { min-height: 180px; }
}

@media (prefers-reduced-motion: reduce) {
  .ams-motion-ready .ams-europcar-solutions-media,
  .ams-motion-ready .ams-europcar-solutions-copy,
  .ams-motion-ready .ams-europcar-destination-card { opacity: 1 !important; transform: none !important; }
}

/* Europcar options aligned with the YDrive card system — v1.0.21 */
.ams-europcar-services {
  position: relative;
  padding-block: 62px 70px;
  overflow: hidden;
  background:
    radial-gradient(circle at 1px 1px,rgba(15,75,143,.08) 1.1px,transparent 1.2px) 0 0/13px 13px,
    linear-gradient(180deg,#f8fafc,#eef4fa);
}
.ams-europcar-services::before {
  content: "";
  position: absolute;
  inset: 0 18% 0;
  background: linear-gradient(180deg,rgba(248,250,252,.96),rgba(238,244,250,.96));
  pointer-events: none;
}
.ams-europcar-services .ams-shell { position: relative; }
.ams-europcar-services .ams-section-head { margin-bottom: 30px; }
.ams-europcar-services .ams-section-head .ams-kicker { justify-content: center; }
.ams-europcar-services .ams-section-head h2 {
  margin-bottom: 0;
  color: var(--ams-blue);
  font-size: clamp(30px,3vw,40px);
}
.ams-europcar-services .ams-service-grid { gap: 16px; }
.ams-europcar-services .ams-service-card {
  min-height: 260px;
  padding: 0 24px 24px;
  border-color: rgba(15,75,143,.11);
  border-radius: 8px;
  box-shadow: 0 9px 25px rgba(7,53,109,.06);
}
.ams-europcar-services .ams-service-card:hover {
  border-color: rgba(0,153,0,.28);
  box-shadow: 0 18px 38px rgba(0,85,0,.1);
  transform: translateY(-5px);
}
.ams-europcar-services .ams-service-number {
  right: 13px;
  top: 12px;
  z-index: 3;
  width: 42px;
  height: 29px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.42);
  border-radius: 999px;
  color: #fff;
  background: rgba(6,44,97,.62);
  backdrop-filter: blur(8px);
  font-size: 14px;
}
.ams-europcar-services .ams-service-image {
  height: 154px;
  position: relative;
  margin: 0 -24px;
  overflow: hidden;
  background: #dce7f2;
}
.ams-europcar-services .ams-service-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,rgba(6,44,97,.02),rgba(6,44,97,.16));
  pointer-events: none;
}
.ams-europcar-services .ams-service-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform .65s cubic-bezier(.2,.7,.2,1),filter .35s ease;
}
.ams-europcar-services .ams-service-card:hover .ams-service-image img {
  filter: saturate(1.06) contrast(1.02);
  transform: scale(1.055);
}
.ams-europcar-services .ams-service-card:nth-child(1) .ams-service-image img { object-fit: contain; object-position: center 60%; padding: 8px 10px; }
.ams-europcar-services .ams-service-card:nth-child(2) .ams-service-image img { object-position: 70% 38%; }
.ams-europcar-services .ams-service-card:nth-child(3) .ams-service-image img { object-position: center 54%; }
.ams-europcar-services .ams-service-card:nth-child(4) .ams-service-image img { object-position: center 50%; }
.ams-europcar-services .ams-service-card:nth-child(5) .ams-service-image img { object-position: center 48%; }
.ams-europcar-services .ams-service-card:nth-child(6) .ams-service-image img { object-position: center 58%; }
.ams-europcar-services .ams-service-card:nth-child(7) .ams-service-image img { object-position: center 52%; }
.ams-europcar-services .ams-benefit-icon {
  width: 40px;
  height: 40px;
  position: relative;
  z-index: 4;
  margin: -20px 0 15px;
  border-width: 1.5px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(7,53,109,.14);
}
.ams-europcar-services .ams-benefit-icon::before { font-size: 18px; }
.ams-europcar-services .ams-service-card h3 {
  max-width: 86%;
  margin: 0;
  color: var(--ams-navy);
  font-size: 16px;
  line-height: 1.3;
  font-weight: 740;
}

@media (max-width: 1050px) {
  .ams-europcar-services .ams-service-card:last-child {
    width: calc(50% - 8px);
    grid-column: 1 / -1;
    justify-self: center;
  }
}

@media (max-width: 760px) {
  .ams-europcar-services { padding-block: 58px 64px; }
  .ams-europcar-services::before { inset-inline: 0; }
  .ams-europcar-services .ams-service-card,
  .ams-europcar-services .ams-service-card:last-child { width: 100%; min-height: 260px; grid-column: auto; }
}

@media (max-width: 480px) {
  .ams-europcar-services .ams-service-card,
  .ams-europcar-services .ams-service-card:last-child { min-height: 250px; }
  .ams-europcar-services .ams-service-image { height: 146px; }
}

/* ANSA Rentals options aligned with the shared service card system — v1.0.22 */
.ams-rentals-services {
  position: relative;
  padding-block: 62px 70px;
  overflow: hidden;
  background:
    radial-gradient(circle at 1px 1px,rgba(15,75,143,.08) 1.1px,transparent 1.2px) 0 0/13px 13px,
    linear-gradient(180deg,#f8fafc,#eef4fa);
}
.ams-rentals-services::before {
  content: "";
  position: absolute;
  inset: 0 18% 0;
  background: linear-gradient(180deg,rgba(248,250,252,.96),rgba(238,244,250,.96));
  pointer-events: none;
}
.ams-rentals-services .ams-shell { position: relative; }
.ams-rentals-services .ams-section-head { margin-bottom: 30px; }
.ams-rentals-services .ams-section-head .ams-kicker { justify-content: center; }
.ams-rentals-services .ams-section-head h2 {
  margin-bottom: 0;
  color: var(--ams-blue);
  font-size: clamp(30px,3vw,40px);
}
.ams-rentals-services .ams-service-grid { gap: 16px; }
.ams-rentals-services .ams-service-card {
  min-height: 260px;
  padding: 0 24px 24px;
  border-color: rgba(15,75,143,.11);
  border-radius: 8px;
  box-shadow: 0 9px 25px rgba(7,53,109,.06);
}
.ams-rentals-services .ams-service-card:hover {
  border-color: rgba(15,75,143,.28);
  box-shadow: 0 18px 38px rgba(7,53,109,.12);
  transform: translateY(-5px);
}
.ams-rentals-services .ams-service-number {
  right: 13px;
  top: 12px;
  z-index: 3;
  width: 42px;
  height: 29px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.42);
  border-radius: 999px;
  color: #fff;
  background: rgba(6,44,97,.62);
  backdrop-filter: blur(8px);
  font-size: 14px;
}
.ams-rentals-services .ams-service-image {
  height: 154px;
  position: relative;
  margin: 0 -24px;
  overflow: hidden;
  background: #dce7f2;
}
.ams-rentals-services .ams-service-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,rgba(6,44,97,.02),rgba(6,44,97,.16));
  pointer-events: none;
}
.ams-rentals-services .ams-service-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform .65s cubic-bezier(.2,.7,.2,1),filter .35s ease;
}
.ams-rentals-services .ams-service-card:hover .ams-service-image img {
  filter: saturate(1.06) contrast(1.02);
  transform: scale(1.055);
}
.ams-rentals-services .ams-service-card:nth-child(1) .ams-service-image img { object-fit: contain; object-position: center 60%; padding: 8px 10px; }
.ams-rentals-services .ams-service-card:nth-child(2) .ams-service-image img { object-position: center 58%; }
.ams-rentals-services .ams-service-card:nth-child(3) .ams-service-image img { object-position: center 54%; }
.ams-rentals-services .ams-service-card:nth-child(4) .ams-service-image img { object-position: 70% 38%; }
.ams-rentals-services .ams-service-card:nth-child(5) .ams-service-image img { object-position: 63% 35%; }
.ams-rentals-services .ams-service-card:nth-child(6) .ams-service-image img { object-position: center 48%; }
.ams-rentals-services .ams-service-card:nth-child(7) .ams-service-image img { object-position: center 58%; }
.ams-rentals-services .ams-benefit-icon {
  width: 40px;
  height: 40px;
  position: relative;
  z-index: 4;
  margin: -20px 0 15px;
  border-width: 1.5px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(7,53,109,.14);
}
.ams-rentals-services .ams-benefit-icon::before { font-size: 18px; }
.ams-rentals-services .ams-service-card:nth-child(1) .ams-benefit-icon::before { content: "\f073"; }
.ams-rentals-services .ams-service-card:nth-child(2) .ams-benefit-icon::before { content: "\f1b9"; }
.ams-rentals-services .ams-service-card:nth-child(3) .ams-benefit-icon::before { content: "\f63c"; }
.ams-rentals-services .ams-service-card:nth-child(4) .ams-benefit-icon::before { content: "\f1de"; }
.ams-rentals-services .ams-service-card:nth-child(5) .ams-benefit-icon::before { content: "\f7d9"; }
.ams-rentals-services .ams-service-card:nth-child(6) .ams-benefit-icon::before { content: "\f590"; }
.ams-rentals-services .ams-service-card:nth-child(7) .ams-benefit-icon::before { content: "\f201"; }
.ams-rentals-services .ams-service-card h3 {
  max-width: 88%;
  margin: 0;
  color: var(--ams-navy);
  font-size: 16px;
  line-height: 1.3;
  font-weight: 740;
}

@media (max-width: 1050px) {
  .ams-rentals-services .ams-service-card:last-child {
    width: calc(50% - 8px);
    grid-column: 1 / -1;
    justify-self: center;
  }
}

@media (max-width: 760px) {
  .ams-rentals-services { padding-block: 58px 64px; }
  .ams-rentals-services::before { inset-inline: 0; }
  .ams-rentals-services .ams-service-card,
  .ams-rentals-services .ams-service-card:last-child { width: 100%; min-height: 260px; grid-column: auto; }
}

@media (max-width: 480px) {
  .ams-rentals-services .ams-service-card,
  .ams-rentals-services .ams-service-card:last-child { min-height: 250px; }
  .ams-rentals-services .ams-service-image { height: 146px; }
}

/* YDrive reference-layout refinement — v1.0.22 */
.ams-ydrive-intro {
  padding: 0;
  background: #fff;
}
.ams-ydrive-intro-grid {
  width: 100%;
  max-width: none;
  min-height: 590px;
  grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr);
  gap: 0;
  align-items: stretch;
}
.ams-ydrive-intro .ams-intro-copy {
  max-width: none;
  grid-column: 2;
  grid-row: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 68px max(48px,calc((100vw - 1180px)/2));
  background: #fff;
}
.ams-ydrive-intro .ams-intro-copy p:first-child {
  max-width: 650px;
  color: var(--ams-blue);
  font-size: clamp(22px,2vw,28px);
  line-height: 1.48;
  font-weight: 700;
}
.ams-ydrive-intro .ams-intro-copy p:last-child {
  max-width: 510px;
  margin-top: 20px;
  color: #4e5c6e;
  font-size: 15px;
  line-height: 1.72;
}
.ams-ydrive-intro-panel {
  min-height: 590px !important;
  grid-column: 1;
  grid-row: 1;
  border: 0;
  border-radius: 0;
  background: #dfe7ef;
  box-shadow: none;
}
.ams-ydrive-intro-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(90deg,transparent 72%,rgba(255,255,255,.14));
  pointer-events: none;
}
.ams-ydrive-intro-panel .ams-photo {
  object-position: 52% center;
  transition: transform .7s cubic-bezier(.2,.7,.2,1);
}
.ams-ydrive-intro-panel:hover .ams-photo { transform: scale(1.025); }

.ams-ydrive-services {
  position: relative;
  padding-block: 62px 70px;
  overflow: hidden;
  background:
    radial-gradient(circle at 1px 1px,rgba(15,75,143,.08) 1.1px,transparent 1.2px) 0 0/13px 13px,
    linear-gradient(180deg,#f8fafc,#eef4fa);
}
.ams-ydrive-services::before {
  content: "";
  position: absolute;
  inset: 0 18% 0;
  background: linear-gradient(180deg,rgba(248,250,252,.96),rgba(238,244,250,.96));
  pointer-events: none;
}
.ams-ydrive-services .ams-shell { position: relative; }
.ams-ydrive-services .ams-section-head { margin-bottom: 30px; }
.ams-ydrive-services .ams-section-head h2 {
  margin-bottom: 0;
  color: var(--ams-blue);
  font-size: clamp(30px,3vw,40px);
}
.ams-ydrive-services .ams-service-grid { gap: 16px; }
.ams-ydrive-services .ams-service-card {
  min-height: 310px;
  padding: 0 24px 22px;
  border-color: rgba(15,75,143,.11);
  border-radius: 8px;
  box-shadow: 0 9px 25px rgba(7,53,109,.06);
}
.ams-ydrive-services .ams-service-card:hover {
  border-color: rgba(15,75,143,.28);
  box-shadow: 0 18px 38px rgba(7,53,109,.12);
  transform: translateY(-5px);
}
.ams-ydrive-services .ams-service-number {
  right: 13px;
  top: 12px;
  z-index: 3;
  width: 42px;
  height: 29px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.42);
  border-radius: 999px;
  color: #fff;
  background: rgba(6,44,97,.62);
  backdrop-filter: blur(8px);
  font-size: 14px;
}
.ams-ydrive-services .ams-service-image {
  height: 142px;
  position: relative;
  margin: 0 -24px 0;
  overflow: hidden;
  background: #dce7f2;
}
.ams-ydrive-services .ams-service-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,rgba(6,44,97,.03),rgba(6,44,97,.18));
  pointer-events: none;
}
.ams-ydrive-services .ams-service-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform .65s cubic-bezier(.2,.7,.2,1),filter .35s ease;
}
.ams-ydrive-services .ams-service-card:hover .ams-service-image img {
  filter: saturate(1.06) contrast(1.02);
  transform: scale(1.055);
}
.ams-ydrive-services .ams-service-card:nth-child(1) .ams-service-image img { object-position: 57% 68%; }
.ams-ydrive-services .ams-service-card:nth-child(2) .ams-service-image img { object-position: 70% 37%; }
.ams-ydrive-services .ams-service-card:nth-child(3) .ams-service-image img { object-position: 63% 35%; }
.ams-ydrive-services .ams-service-card:nth-child(4) .ams-service-image img { object-position: 55% 46%; }
.ams-ydrive-services .ams-service-card:nth-child(5) .ams-service-image img { object-position: center 54%; }
.ams-ydrive-services .ams-service-card:nth-child(6) .ams-service-image img { object-position: center 58%; }
.ams-ydrive-services .ams-service-card:nth-child(7) .ams-service-image img { object-position: center 48%; }
.ams-ydrive-services .ams-benefit-icon {
  width: 40px;
  height: 40px;
  position: relative;
  z-index: 4;
  margin: -20px 0 15px;
  border-width: 1.5px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(7,53,109,.14);
}
.ams-ydrive-services .ams-benefit-icon::before { font-size: 18px; }
.ams-ydrive-services .ams-service-card h3 {
  max-width: 82%;
  margin: 0 0 8px;
  color: var(--ams-navy);
  font-size: 16px;
  line-height: 1.3;
  font-weight: 740;
}
.ams-ydrive-services .ams-service-card p {
  max-width: 94%;
  color: #536176;
  font-size: 12.5px;
  line-height: 1.5;
}

.ams-ydrive-cta {
  padding: 0;
  overflow: visible;
  background: #eef4fa;
}
.ams-ydrive-cta::before { display: none; }
.ams-ydrive-cta > .ams-shell {
  width: 100%;
  max-width: none;
}
.ams-ydrive-cta .ams-form-launcher {
  width: 100%;
  max-width: none;
  min-height: clamp(380px,32vw,500px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 72px max(28px,calc((100vw - 1180px)/2));
  border: 0;
  border-radius: 0;
  color: #fff;
  background: linear-gradient(118deg,var(--ams-blue-dark),var(--ams-blue));
  box-shadow: none;
}
.ams-ydrive-cta .ams-form-launcher::before {
  content: "";
  width: 330px;
  height: 330px;
  position: absolute;
  left: -170px;
  top: -245px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 50%;
  box-shadow: 0 0 0 46px rgba(255,255,255,.025),0 0 0 92px rgba(255,255,255,.018);
}
.ams-ydrive-cta .ams-form-launcher h2 {
  position: relative;
  margin-bottom: 10px;
  color: #fff;
  font-size: clamp(31px,3.3vw,44px);
  line-height: 1.08;
}
.ams-ydrive-cta .ams-form-launcher p {
  position: relative;
  max-width: 730px;
  margin-bottom: 22px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
  line-height: 1.55;
}
.ams-ydrive-cta .ams-form-launcher .ams-btn {
  min-width: 175px;
  position: relative;
  color: var(--ams-navy);
  background: var(--ams-yellow);
}
.ams-ydrive-cta .ams-form-launcher .ams-btn span { color: var(--ams-navy); }
.ams-ydrive-cta .ams-form-launcher .ams-btn:hover { color: var(--ams-navy); background: #fff36b; }

.ams-ydrive-proof {
  padding-block: 54px;
  color: var(--ams-ink);
  background: #eef4fa;
}
.ams-ydrive-proof .ams-proof-grid {
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 20px;
  align-items: stretch;
}
.ams-ydrive-proof .ams-proof-copy,
.ams-ydrive-proof .ams-social-panel {
  min-height: 300px;
  border-radius: 14px;
}
.ams-ydrive-proof .ams-proof-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 42px 42px 36px 92px;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(125deg,var(--ams-blue-dark),var(--ams-blue));
  box-shadow: 0 16px 38px rgba(7,53,109,.14);
}
.ams-ydrive-proof .ams-proof-copy::after {
  content: "";
  width: 240px;
  height: 240px;
  position: absolute;
  right: -150px;
  bottom: -170px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 50%;
  box-shadow: 0 0 0 40px rgba(255,255,255,.02);
}
.ams-ydrive-proof .ams-quote-mark {
  left: 26px;
  top: 30px;
  color: var(--ams-yellow);
  font-size: 82px;
}
.ams-ydrive-proof .ams-proof-copy h2 {
  margin-bottom: 18px;
  color: #fff;
  font-size: clamp(29px,2.8vw,38px);
}
.ams-ydrive-proof .ams-testimonial-ready {
  max-width: 520px;
  padding-top: 18px;
  border-top-color: rgba(255,255,255,.24);
}
.ams-ydrive-proof .ams-testimonial-ready p {
  color: rgba(255,255,255,.84);
  font-size: 15px;
}
.ams-ydrive-proof .ams-social-panel {
  padding: 36px 42px;
  border: 1px solid rgba(15,75,143,.11);
  background: #fff;
  box-shadow: 0 14px 34px rgba(7,53,109,.08);
}
.ams-ydrive-proof .ams-social-panel h3 {
  margin-bottom: 18px;
  color: var(--ams-blue);
  font-size: 25px;
}
.ams-ydrive-proof .ams-social-links { gap: 9px; }
.ams-ydrive-proof .ams-social-links a {
  min-height: 52px;
  border-radius: 6px;
  background: #fff;
}
.ams-ydrive-proof .ams-social-links a:hover,
.ams-ydrive-proof .ams-social-links a:focus-visible {
  color: var(--ams-navy) !important;
  border-color: var(--ams-yellow) !important;
  background: var(--ams-yellow) !important;
}
.ams-ydrive-proof .ams-social-links a:hover i,
.ams-ydrive-proof .ams-social-links a:hover span,
.ams-ydrive-proof .ams-social-links a:hover b,
.ams-ydrive-proof .ams-social-links a:focus-visible i,
.ams-ydrive-proof .ams-social-links a:focus-visible span,
.ams-ydrive-proof .ams-social-links a:focus-visible b {
  color: var(--ams-navy) !important;
}

.ams-motion-ready .ams-ydrive-intro-panel,
.ams-motion-ready.ams-ydrive .ams-form-launcher { opacity: 0; transform: translateY(18px); }
.ams-motion-ready .ams-ydrive-intro-panel.ams-revealed,
.ams-motion-ready.ams-ydrive .ams-form-launcher.ams-revealed { opacity: 1; transform: none; transition: opacity .5s ease calc(var(--ams-index,0) * 42ms),transform .5s cubic-bezier(.2,.7,.2,1) calc(var(--ams-index,0) * 42ms),box-shadow .25s ease; }

@media (max-width: 1050px) {
  .ams-ydrive-intro-grid { grid-template-columns: minmax(0,.86fr) minmax(0,1.14fr); gap: 0; }
  .ams-ydrive-intro .ams-intro-copy { padding: 56px 34px; }
  .ams-ydrive-services .ams-service-card:last-child {
    width: calc(50% - 8px);
    grid-column: 1 / -1;
    justify-self: center;
  }
  .ams-ydrive-cta .ams-form-launcher { padding-inline: 38px; }
}

@media (max-width: 760px) {
  .ams-ydrive-intro { padding: 0; }
  .ams-ydrive-intro-grid { min-height: 0; grid-template-columns: 1fr; gap: 0; }
  .ams-ydrive-intro .ams-intro-copy { grid-column: 1; grid-row: 2; padding: 48px 24px 56px; }
  .ams-ydrive-intro-panel { min-height: 330px !important; grid-column: 1; grid-row: 1; }
  .ams-ydrive-services { padding-block: 58px 64px; }
  .ams-ydrive-services::before { inset-inline: 0; }
  .ams-ydrive-services .ams-service-card,
  .ams-ydrive-services .ams-service-card:last-child { width: 100%; min-height: 310px; grid-column: auto; }
  .ams-ydrive-cta { padding: 0; }
  .ams-ydrive-cta .ams-form-launcher { min-height: 350px; padding: 56px 22px; border-radius: 0; }
  .ams-ydrive-cta .ams-form-launcher .ams-btn { width: min(100%,230px); }
  .ams-ydrive-proof { padding-block: 42px; }
  .ams-ydrive-proof .ams-proof-grid { grid-template-columns: 1fr; gap: 14px; }
  .ams-ydrive-proof .ams-proof-copy,
  .ams-ydrive-proof .ams-social-panel { min-height: 0; }
  .ams-ydrive-proof .ams-proof-copy { padding: 82px 24px 34px; }
  .ams-ydrive-proof .ams-quote-mark { left: 22px; top: 19px; }
  .ams-ydrive-proof .ams-social-panel { padding: 30px 22px; }
}

@media (max-width: 480px) {
  .ams-ydrive-intro-panel { min-height: 290px !important; }
  .ams-ydrive-services .ams-service-card,
  .ams-ydrive-services .ams-service-card:last-child { min-height: 300px; }
  .ams-ydrive-services .ams-service-image { height: 136px; }
  .ams-ydrive-cta .ams-form-launcher h2 { font-size: 30px; }
}

@media (prefers-reduced-motion: reduce) {
  .ams-motion-ready .ams-ydrive-intro-panel,
  .ams-motion-ready.ams-ydrive .ams-form-launcher { opacity: 1 !important; transform: none !important; }
}

/* Keep split-panel copy readable on ultra-wide and 4K displays. */
@media (min-width: 1051px) {
  .ams-rentals-solutions-copy,
  .ams-rentals .ams-business-copy,
  .ams-europcar-solutions-copy,
  .ams-ydrive-intro .ams-intro-copy {
    padding-inline: clamp(50px, calc((100vw - 1180px) / 2), 130px);
  }
}
