:root {
  --navy: #062652;
  --blue: #0750a5;
  --blue-dark: #063675;
  --blue-light: #eaf4ff;
  --yellow: #ffc72c;
  --green: #10a866;
  --green-dark: #0b8d54;
  --ink: #10233d;
  --muted: #617187;
  --line: #dce7f1;
  --surface: #f5f8fb;
  --white: #fff;
  --shadow: 0 24px 70px rgba(15, 51, 91, .14);
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  color: var(--ink);
  background: var(--white);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}

a { color: inherit; text-decoration: none; }
img, svg { display: block; }
p, h1, h2, h3 { margin-top: 0; }
button, input, select, textarea { font: inherit; }

.svg-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }

.icon {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.container { width: min(1140px, calc(100% - 40px)); margin: 0 auto; }

.skip-link {
  position: fixed;
  z-index: 999;
  top: 8px;
  left: 8px;
  padding: 10px 16px;
  color: var(--navy);
  background: var(--yellow);
  border-radius: 9px;
  transform: translateY(-150%);
}

.skip-link:focus { transform: translateY(0); }

.campaign-header {
  position: relative;
  z-index: 20;
  background: var(--white);
  border-bottom: 1px solid rgba(220, 231, 241, .9);
}

.campaign-header__inner { min-height: 86px; display: flex; align-items: center; gap: 25px; }
.campaign-logo { width: 190px; height: auto; }
.campaign-header__location { margin-left: auto; display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: 13px; font-weight: 650; }
.campaign-header__location .icon { width: 18px; height: 18px; color: var(--blue); }

.button {
  min-height: 50px;
  padding: 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 0;
  border-radius: 13px;
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.button:hover { transform: translateY(-2px); }
.button--whatsapp { color: var(--white); background: var(--green); box-shadow: 0 12px 26px rgba(16, 168, 102, .22); }
.button--whatsapp:hover { background: var(--green-dark); box-shadow: 0 16px 32px rgba(16, 168, 102, .28); }
.button--blue { color: var(--white); background: var(--blue); box-shadow: 0 12px 26px rgba(7, 80, 165, .2); }
.button--blue:hover { background: var(--blue-dark); }
.button--large { min-height: 61px; padding: 0 27px; border-radius: 15px; font-size: 16px; }
.button .icon--arrow { margin-left: 4px; }

.hero { position: relative; overflow: hidden; color: var(--white); background: linear-gradient(128deg, #041d43 0%, #073c81 56%, #0754ab 100%); }
.hero::before { content: ""; position: absolute; inset: 0; opacity: .35; background-image: radial-gradient(rgba(255,255,255,.2) .7px, transparent .7px); background-size: 23px 23px; mask-image: linear-gradient(90deg, black, transparent 65%); }
.hero__shape { position: absolute; border-radius: 50%; }
.hero__shape--one { width: 490px; height: 490px; top: -300px; right: -220px; border: 75px solid rgba(255,255,255,.04); }
.hero__shape--two { width: 330px; height: 330px; bottom: -280px; left: 34%; background: rgba(255,199,44,.12); }
.hero__grid { position: relative; min-height: 635px; padding-top: 72px; padding-bottom: 78px; display: grid; grid-template-columns: 1.05fr .95fr; gap: 70px; align-items: center; }

.eyebrow { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 18px; color: var(--yellow); font-size: 12px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.eyebrow > span { width: 7px; height: 7px; background: currentColor; border-radius: 50%; box-shadow: 0 0 0 5px rgba(255,199,44,.12); }
.eyebrow--blue { color: var(--blue); }
.eyebrow--blue > span { box-shadow: 0 0 0 5px rgba(7,80,165,.1); }

h1 { max-width: 690px; margin-bottom: 23px; font-size: clamp(42px, 5.1vw, 64px); line-height: 1.03; letter-spacing: -.052em; }
h1 em { color: var(--yellow); font-style: normal; }
.hero__lead { max-width: 635px; margin-bottom: 30px; color: rgba(255,255,255,.78); font-size: 18px; line-height: 1.7; }
.hero__microcopy { margin: 13px 0 0; display: flex; align-items: center; gap: 7px; color: rgba(255,255,255,.6); font-size: 11px; }
.hero__microcopy .icon { width: 15px; height: 15px; }
.hero__benefits { margin-top: 32px; display: flex; flex-wrap: wrap; gap: 12px 22px; }
.hero__benefits > div { display: flex; align-items: center; gap: 8px; color: rgba(255,255,255,.85); font-size: 12px; }
.hero__benefits span { width: 21px; height: 21px; display: grid; place-items: center; color: var(--navy); background: var(--yellow); border-radius: 50%; }
.hero__benefits .icon { width: 13px; height: 13px; stroke-width: 2.8; }

.hero__visual { position: relative; min-height: 465px; }
.chat-card { position: absolute; z-index: 2; width: min(100%, 420px); top: 18px; right: 0; overflow: hidden; color: var(--ink); background: #eef2f0; border: 8px solid rgba(255,255,255,.18); border-radius: 28px; box-shadow: 0 34px 75px rgba(0,15,45,.38); transform: rotate(2deg); }
.chat-card__header { min-height: 75px; padding: 14px 18px; display: flex; align-items: center; gap: 12px; color: var(--white); background: #075e54; }
.chat-card__header img { width: 45px; height: 45px; object-fit: contain; border-radius: 50%; background: var(--white); }
.chat-card__header strong, .chat-card__header small { display: block; }
.chat-card__header strong { margin-bottom: 4px; font-size: 14px; }
.chat-card__header small { display: flex; align-items: center; gap: 5px; color: rgba(255,255,255,.7); font-size: 10px; }
.chat-card__header small span { width: 6px; height: 6px; background: #54e89b; border-radius: 50%; }
.chat-card__header > .icon { margin-left: auto; }
.chat-card__body { min-height: 355px; padding: 18px; background-color: #e7dfd6; background-image: radial-gradient(rgba(96,85,74,.09) .8px, transparent .8px); background-size: 14px 14px; }
.chat-date { width: max-content; margin: 0 auto 16px; padding: 5px 10px; color: #65747a; background: rgba(255,255,255,.8); border-radius: 7px; font-size: 9px; }
.chat-message { width: max-content; max-width: 78%; padding: 10px 11px 7px; border-radius: 4px 12px 12px 12px; box-shadow: 0 2px 4px rgba(20,30,35,.08); }
.chat-message p { margin-bottom: 5px; font-size: 12px; line-height: 1.45; }
.chat-message time { display: block; color: #778181; font-size: 8px; text-align: right; }
.chat-message--business { background: var(--white); }
.chat-message--visitor { margin: 15px 0 0 auto; background: #d5f6c8; border-radius: 12px 4px 12px 12px; }
.chat-options { margin: 12px 0 0 18px; display: flex; flex-wrap: wrap; gap: 7px; }
.chat-options span { padding: 7px 10px; color: #1d6659; background: rgba(255,255,255,.88); border: 1px solid rgba(7,94,84,.18); border-radius: 50px; font-size: 9px; font-weight: 700; }
.chat-status { width: max-content; margin: 25px auto 0; padding: 7px 11px; display: flex; align-items: center; gap: 6px; color: #59716c; background: rgba(255,255,255,.72); border-radius: 50px; font-size: 8px; font-weight: 700; }
.chat-status span { width: 6px; height: 6px; background: var(--green); border-radius: 50%; }
.hero__seal { position: absolute; z-index: 3; left: -12px; bottom: 0; padding: 13px 17px; display: flex; align-items: center; gap: 10px; color: var(--ink); background: var(--white); border-radius: 14px; box-shadow: 0 18px 40px rgba(0,15,40,.25); }
.hero__seal > .icon { width: 28px; height: 28px; color: var(--green); }
.hero__seal strong, .hero__seal small { display: block; }
.hero__seal strong { margin-bottom: 3px; font-size: 11px; }
.hero__seal small { color: var(--muted); font-size: 8px; }

.quick-info { position: relative; z-index: 5; margin-top: -1px; background: var(--white); border-bottom: 1px solid var(--line); box-shadow: 0 14px 35px rgba(15,51,91,.06); }
.quick-info__grid { min-height: 112px; display: grid; grid-template-columns: 1.15fr 1fr 1fr; align-items: stretch; }
.quick-info__item { padding: 20px 30px; display: flex; align-items: center; gap: 14px; border-right: 1px solid var(--line); transition: background .2s ease; }
.quick-info__item:last-child { border: 0; }
a.quick-info__item:hover { background: var(--blue-light); }
.quick-info__item > span { flex: 0 0 auto; width: 45px; height: 45px; display: grid; place-items: center; color: var(--blue); background: var(--blue-light); border-radius: 13px; }
.quick-info__item p, .quick-info__item small, .quick-info__item strong, .quick-info__item b { display: block; margin: 0; }
.quick-info__item small { margin-bottom: 3px; color: var(--muted); font-size: 9px; font-weight: 750; letter-spacing: .07em; text-transform: uppercase; }
.quick-info__item strong { color: var(--navy); font-size: 13px; }
.quick-info__item b { margin-top: 3px; color: var(--muted); font-size: 10px; font-weight: 500; }

.section { padding: 105px 0; }
.section-heading { max-width: 670px; margin-bottom: 42px; }
.section-heading--center { margin-left: auto; margin-right: auto; text-align: center; }
h2 { margin-bottom: 16px; color: var(--navy); font-size: clamp(34px, 4vw, 48px); line-height: 1.09; letter-spacing: -.042em; }
h2 em { color: var(--blue); font-style: normal; }
.section-heading > p { margin: 0; color: var(--muted); font-size: 16px; line-height: 1.7; }

.services { background: var(--surface); }
.services__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.service-card { min-height: 113px; padding: 20px; display: flex; align-items: center; gap: 14px; background: var(--white); border: 1px solid var(--line); border-radius: 17px; box-shadow: 0 9px 25px rgba(22,54,91,.04); transition: transform .2s ease, border .2s ease, box-shadow .2s ease; }
.service-card:hover { border-color: #9fc7eb; box-shadow: 0 16px 38px rgba(22,54,91,.1); transform: translateY(-4px); }
.service-card__icon { flex: 0 0 auto; width: 48px; height: 48px; display: grid; place-items: center; color: var(--blue); background: var(--blue-light); border-radius: 14px; }
.service-card > span:nth-child(2) { min-width: 0; }
.service-card strong, .service-card small, .service-card b { display: block; }
.service-card strong { margin-bottom: 5px; color: var(--navy); font-size: 14px; }
.service-card small { color: var(--muted); font-size: 10px; line-height: 1.4; }
.service-card b { margin-bottom: 4px; color: #8b6300; font-size: 8px; letter-spacing: .07em; text-transform: uppercase; }
.service-card__arrow { flex: 0 0 auto; width: 17px; height: 17px; margin-left: auto; color: var(--blue); transition: transform .2s ease; }
.service-card:hover .service-card__arrow { transform: translateX(4px); }
.service-card--featured { border-color: #eed78f; background: #fffaf0; }
.service-card--featured .service-card__icon { color: #8b6300; background: var(--yellow); }
.services__notice { max-width: 790px; margin: 24px auto 0; padding: 12px 16px; display: flex; align-items: flex-start; justify-content: center; gap: 8px; color: var(--muted); background: #edf3f8; border-radius: 10px; font-size: 10px; line-height: 1.55; text-align: center; }
.services__notice .icon { flex: 0 0 auto; width: 15px; height: 15px; color: var(--green); }

.visit__grid { display: grid; grid-template-columns: 1fr .92fr; gap: 90px; align-items: center; }
.visit__content > p { max-width: 530px; color: var(--muted); font-size: 16px; line-height: 1.75; }
.visit__content ul { margin: 26px 0 31px; padding: 0; display: grid; gap: 16px; list-style: none; }
.visit__content li { display: flex; align-items: center; gap: 12px; }
.visit__content li > span { flex: 0 0 auto; width: 31px; height: 31px; display: grid; place-items: center; color: var(--white); background: var(--green); border-radius: 50%; }
.visit__content li .icon { width: 16px; height: 16px; stroke-width: 2.8; }
.visit__content li p, .visit__content li strong, .visit__content li small { display: block; margin: 0; }
.visit__content li strong { margin-bottom: 2px; color: var(--ink); font-size: 13px; }
.visit__content li small { color: var(--muted); font-size: 11px; }
.visit__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; }
.visit__phone { display: inline-flex; align-items: center; gap: 7px; color: var(--blue); font-size: 13px; font-weight: 750; }
.visit__phone:hover { text-decoration: underline; }

.location-card { overflow: hidden; background: var(--white); border: 1px solid var(--line); border-radius: 24px; box-shadow: var(--shadow); }
.location-card__map { position: relative; height: 350px; overflow: hidden; background: #e6f0e8; }
.location-card__map::before { content: ""; position: absolute; inset: 0; opacity: .48; background-image: linear-gradient(90deg, rgba(102,157,116,.13) 1px, transparent 1px), linear-gradient(rgba(102,157,116,.13) 1px, transparent 1px); background-size: 48px 48px; }
.map-road { position: absolute; display: block; background: #fffdf5; border: 1px solid #d6d2c2; box-shadow: 0 0 0 5px rgba(255,255,255,.55); }
.map-road--one { width: 550px; height: 31px; top: 138px; left: -45px; transform: rotate(-15deg); }
.map-road--two { width: 30px; height: 450px; top: -45px; left: 125px; transform: rotate(18deg); }
.map-road--three { width: 300px; height: 22px; right: -80px; bottom: 44px; transform: rotate(20deg); }
.map-pin { position: absolute; z-index: 2; width: 62px; height: 62px; top: 122px; left: 55%; display: grid; place-items: center; color: var(--white); background: var(--blue); border: 7px solid var(--white); border-radius: 50% 50% 50% 10%; box-shadow: 0 15px 28px rgba(7,80,165,.28); transform: rotate(-45deg); }
.map-pin .icon { width: 25px; height: 25px; transform: rotate(45deg); }
.map-label { position: absolute; z-index: 3; left: 20px; bottom: 18px; padding: 10px 13px; display: flex; align-items: center; gap: 10px; background: var(--white); border-radius: 12px; box-shadow: 0 10px 28px rgba(26,58,62,.16); }
.map-label img { width: 36px; height: 36px; object-fit: contain; border-radius: 8px; }
.map-label strong, .map-label small { display: block; }
.map-label strong { margin-bottom: 3px; font-size: 11px; }
.map-label small { color: var(--muted); font-size: 8px; }
.location-card__address { min-height: 82px; padding: 17px 20px; display: flex; align-items: center; gap: 12px; }
.location-card__address > span { flex: 0 0 auto; width: 37px; height: 37px; display: grid; place-items: center; color: var(--blue); background: var(--blue-light); border-radius: 10px; }
.location-card__address p, .location-card__address strong, .location-card__address small { display: block; margin: 0; }
.location-card__address strong { margin-bottom: 4px; font-size: 12px; }
.location-card__address small { color: var(--muted); font-size: 9px; }

.steps { background: var(--surface); }
.steps__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.steps__grid article { position: relative; padding: 32px 27px; text-align: center; background: var(--white); border: 1px solid var(--line); border-radius: 20px; }
.steps__grid article > b { position: absolute; top: 17px; right: 18px; width: 25px; height: 25px; display: grid; place-items: center; color: var(--navy); background: var(--yellow); border-radius: 50%; font-size: 10px; }
.steps__grid article > span { width: 68px; height: 68px; margin: 0 auto 20px; display: grid; place-items: center; color: var(--blue); background: var(--blue-light); border-radius: 19px; }
.steps__grid article > span .icon { width: 28px; height: 28px; }
.steps__grid h3 { margin-bottom: 9px; color: var(--navy); font-size: 17px; }
.steps__grid p { max-width: 285px; margin: 0 auto; color: var(--muted); font-size: 12px; line-height: 1.6; }

.faq__grid { display: grid; grid-template-columns: .75fr 1.25fr; gap: 85px; }
.faq__intro > p { max-width: 380px; margin-bottom: 24px; color: var(--muted); line-height: 1.7; }
.faq__list { border-top: 1px solid var(--line); }
.faq__list details { border-bottom: 1px solid var(--line); }
.faq__list summary { position: relative; padding: 24px 45px 24px 0; color: var(--navy); font-size: 14px; font-weight: 750; list-style: none; cursor: pointer; }
.faq__list summary::-webkit-details-marker { display: none; }
.faq__list summary span::before, .faq__list summary span::after { content: ""; position: absolute; top: 50%; right: 8px; width: 14px; height: 2px; background: var(--blue); transition: transform .2s ease; }
.faq__list summary span::after { transform: rotate(90deg); }
.faq__list details[open] summary span::after { transform: rotate(0); }
.faq__list details p { margin: -3px 45px 23px 0; color: var(--muted); font-size: 12px; line-height: 1.7; }

.final-cta { position: relative; overflow: hidden; padding: 76px 0; color: var(--white); background: linear-gradient(128deg, #04224e, #0750a5); }
.final-cta__shape { position: absolute; width: 340px; height: 340px; right: -190px; top: -200px; border: 55px solid rgba(255,255,255,.05); border-radius: 50%; }
.final-cta__inner { position: relative; display: grid; grid-template-columns: auto 1fr auto; gap: 23px; align-items: center; }
.final-cta__inner > img { width: 82px; height: 82px; padding: 6px; object-fit: contain; background: var(--white); border-radius: 20px; }
.final-cta__inner > div > span { display: block; margin-bottom: 7px; color: var(--yellow); font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.final-cta h2 { max-width: 590px; margin-bottom: 8px; color: var(--white); font-size: 35px; }
.final-cta p { margin: 0; color: rgba(255,255,255,.65); font-size: 12px; }

.campaign-footer { padding: 35px 0 100px; color: rgba(255,255,255,.58); background: #03152f; }
.campaign-footer__inner { display: grid; grid-template-columns: 1fr 1fr 1.1fr; gap: 40px; align-items: center; }
.campaign-footer img { width: 175px; border-radius: 5px; }
.campaign-footer p { margin: 0; font-size: 9px; line-height: 1.7; }
.campaign-footer p:last-child { text-align: right; }
.campaign-footer strong { color: rgba(255,255,255,.82); font-weight: 650; }

.sticky-cta { position: fixed; z-index: 50; left: 50%; bottom: 15px; width: min(730px, calc(100% - 28px)); min-height: 70px; padding: 9px 9px 9px 20px; display: flex; align-items: center; gap: 25px; color: var(--ink); background: rgba(255,255,255,.96); border: 1px solid #d9e4ee; border-radius: 18px; box-shadow: 0 18px 50px rgba(5,34,74,.2); backdrop-filter: blur(14px); transform: translateX(-50%); }
.sticky-cta > div { margin-right: auto; }
.sticky-cta strong, .sticky-cta small { display: block; }
.sticky-cta strong { margin-bottom: 3px; font-size: 12px; }
.sticky-cta small { color: var(--muted); font-size: 9px; }

@media (max-width: 960px) {
  .campaign-header__location { display: none; }
  .campaign-header__inner > .button { margin-left: auto; }
  .hero__grid { grid-template-columns: 1fr .83fr; gap: 30px; }
  .chat-card { width: 360px; }
  .services__grid { grid-template-columns: 1fr 1fr; }
  .visit__grid { gap: 50px; }
  .final-cta__inner { grid-template-columns: auto 1fr; }
  .final-cta__inner > .button { grid-column: 1 / -1; justify-self: center; }
}

@media (max-width: 760px) {
  .container { width: min(100% - 30px, 620px); }
  .campaign-header__inner { min-height: 72px; }
  .campaign-logo { width: 155px; }
  .campaign-header__inner > .button { min-height: 43px; padding: 0 14px; font-size: 12px; }
  .campaign-header__inner > .button .icon { width: 17px; height: 17px; }
  .hero__grid { min-height: auto; padding-top: 60px; padding-bottom: 70px; grid-template-columns: 1fr; }
  .hero__content { text-align: center; }
  .hero__lead { margin-left: auto; margin-right: auto; }
  .hero__microcopy, .hero__benefits { justify-content: center; }
  .hero__visual { width: min(100%, 460px); min-height: 450px; margin: 5px auto 0; }
  .chat-card { width: min(100% - 8px, 400px); right: 50%; transform: translateX(50%) rotate(1deg); }
  .quick-info__grid { grid-template-columns: 1fr 1fr; }
  .quick-info__item { padding: 18px; }
  .quick-info__item:first-child { grid-column: 1 / -1; border-right: 0; border-bottom: 1px solid var(--line); }
  .section { padding: 85px 0; }
  .section-heading { margin-left: auto; margin-right: auto; text-align: center; }
  .visit__grid, .faq__grid { grid-template-columns: 1fr; }
  .visit__content { text-align: center; }
  .visit__content > p { margin-left: auto; margin-right: auto; }
  .visit__content ul { width: max-content; max-width: 100%; margin-left: auto; margin-right: auto; text-align: left; }
  .visit__actions { justify-content: center; }
  .location-card { width: min(100%, 520px); margin: 0 auto; }
  .steps__grid { grid-template-columns: 1fr; }
  .faq__grid { gap: 42px; }
  .faq__intro { text-align: center; }
  .faq__intro > p { margin-left: auto; margin-right: auto; }
  .final-cta__inner { grid-template-columns: 1fr; text-align: center; }
  .final-cta__inner > img { margin: 0 auto; }
  .final-cta__inner > .button { grid-column: auto; }
  .campaign-footer__inner { grid-template-columns: 1fr; gap: 18px; text-align: center; }
  .campaign-footer img { margin: 0 auto; }
  .campaign-footer p:last-child { text-align: center; }
}

@media (max-width: 520px) {
  .container { width: min(100% - 22px, 450px); }
  .campaign-header__inner > .button { width: 45px; min-width: 45px; padding: 0; border-radius: 50%; }
  .campaign-header__inner > .button .icon { width: 21px; height: 21px; }
  .campaign-header__inner > .button { font-size: 0; gap: 0; }
  .campaign-logo { width: 145px; }
  h1 { font-size: 39px; }
  h2 { font-size: 33px; }
  .hero__lead { font-size: 16px; }
  .hero__content > .button { width: 100%; padding: 0 17px; font-size: 14px; }
  .hero__benefits { gap: 10px 14px; }
  .hero__benefits > div { font-size: 10px; }
  .hero__visual { min-height: 415px; }
  .chat-card__body { min-height: 318px; }
  .hero__seal { left: 0; bottom: -3px; }
  .quick-info__grid { grid-template-columns: 1fr; }
  .quick-info__item, .quick-info__item:first-child { grid-column: auto; border-right: 0; border-bottom: 1px solid var(--line); }
  .quick-info__item:last-child { border-bottom: 0; }
  .services__grid { grid-template-columns: 1fr; }
  .service-card { min-height: 102px; }
  .services__notice { text-align: left; }
  .location-card__map { height: 290px; }
  .map-pin { top: 90px; left: 56%; }
  .sticky-cta { min-height: 66px; bottom: 9px; padding: 8px 8px 8px 14px; gap: 10px; }
  .sticky-cta strong { font-size: 10px; }
  .sticky-cta .button { min-height: 48px; padding: 0 15px; font-size: 11px; }
  .sticky-cta .button .icon { width: 17px; height: 17px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

.cookie-consent { position: fixed; z-index: 9999; right: 20px; bottom: 20px; width: min(540px, calc(100% - 40px)); padding: 20px; color: #0b1f39; background: rgba(255,255,255,.98); border: 1px solid #d8e3ef; border-radius: 18px; box-shadow: 0 22px 65px rgba(4,31,70,.25); backdrop-filter: blur(12px); }
.cookie-consent__content { display: grid; gap: 16px; }
.cookie-consent strong { display: block; margin-bottom: 6px; font: 800 16px/1.25 "Manrope", sans-serif; }
.cookie-consent p { margin: 0; color: #52657b; font-size: 13px; line-height: 1.55; }
.cookie-consent__actions { display: flex; justify-content: flex-end; gap: 10px; }
.cookie-consent__button, .cookie-settings { border: 0; font: 700 12px/1 "DM Sans", sans-serif; cursor: pointer; }
.cookie-consent__button { min-height: 42px; padding: 0 18px; border-radius: 10px; }
.cookie-consent__button--primary { color: #fff; background: #12a565; }
.cookie-consent__button--secondary { color: #17314f; background: #edf3f8; }
.cookie-settings { padding: 0; color: inherit; background: transparent; text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 520px) {
  .cookie-consent { right: 11px; bottom: 84px; width: calc(100% - 22px); padding: 17px; }
  .cookie-consent__actions { display: grid; grid-template-columns: 1fr 1fr; }
}
