/* Kyon Embaixadores — built on the KyonMed light system */
.amb .bhero{display:flex;flex-direction:column;min-height:100svh;padding-top:140px;padding-bottom:0}
.amb .bhero__inner{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center}
.amb-over{display:inline-flex;align-items:center;align-self:center;margin:24px 0 0;padding:8px 16px;border:1.5px solid var(--border);border-radius:999px;font-size:15px;font-weight:400;letter-spacing:normal;text-transform:none;line-height:1.6;color:var(--text-muted)}
.amb .bhero__title{max-width:none;width:100%;text-wrap:balance;font-size:min(66px,(min(100vw,1200px) - 64px) / 11.6);line-height:1.1}
.amb-title__mark{display:inline-block;height:.72em;width:auto;vertical-align:-0.04em;margin-right:.12em}
.amb-title__kyon{font-weight:500}
.amb-ticker{width:100%;margin:0;padding:20px 0;background:var(--primary-600);overflow:hidden;flex:0 0 auto}
.amb-ticker__track{display:flex;width:max-content;animation:amb-marquee 34s linear infinite}
.amb-ticker:hover .amb-ticker__track{animation-play-state:paused}
@keyframes amb-marquee{from{transform:translateX(0)}to{transform:translateX(-33.3333%)}}
.amb-seals{list-style:none;margin:0;padding:0 60px 0 0;display:flex;flex:0 0 auto;align-items:center;gap:0 60px}
.amb-seals li{display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:500;white-space:nowrap;color:#fff;background:none;border:0;border-radius:0;padding:0}
.amb-seals svg{width:18px;height:18px;flex:0 0 auto;color:rgba(255,255,255,.82)}
.amb .bhero__pill{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:500;line-height:1.4;color:var(--text-muted)}
.amb .bhero__pill svg{width:16px;height:16px;flex:0 0 auto;color:var(--primary-600)}
.amb .bhero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 20px}

/* premise */
.amb-premise{padding-bottom:72px}
.amb-premise__grid{display:grid;grid-template-columns:1fr 1.15fr;gap:56px;align-items:stretch}
.amb-premise__side{display:flex;flex-direction:column}
.amb-premise__shot{display:block;width:100%;flex:1 1 auto;margin-top:28px;min-height:220px;object-fit:cover;border-radius:18px}
.amb-premise__copy{margin-top:-7px;display:flex;flex-direction:column}
.ico-tile{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 auto;border-radius:12px;background:#D6E0FF;color:var(--primary-600)}
.ico-tile svg{width:21px;height:21px}
.amb-callout .ico-tile{background:var(--primary-50)}
.amb-callout{margin-top:auto;display:flex;flex-direction:column;gap:16px;align-items:flex-start;background:#fff;border:1.5px solid var(--border);border-radius:22px;padding:24px 26px}
.amb-callout p{margin:0;font-size:18px;line-height:1.6;color:var(--text-muted);text-wrap:pretty}
.amb-premise__copy .blead+.blead{margin-top:18px}

/* how it works */
.amb-how{padding-top:72px}
.amb-how .demo__eyebrow,.amb-how .demo__title{text-align:center}
.amb-how .demo__title{margin-left:auto;margin-right:auto}
.amb-steps{list-style:none;margin:52px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.amb-steps li{position:relative;padding:0 28px 8px;border-right:1px solid var(--border)}
.amb-steps li:last-child{border-right:0}
/* single 4px pill rail running through the middle of every badge */
.amb-track{--bh:60px;--pad:4px;margin-top:28px!important;--shift:0px;position:relative;margin:52px 0 0}
.amb-rail{position:absolute;left:0;right:calc(25% - 28px - var(--shift) - var(--bh)/2 - 3px);top:calc(var(--pad) + var(--bh)/2 - 6px);height:12px;border-radius:999px;background:var(--border);overflow:hidden;z-index:0}
.amb-rail__fill{display:block;height:100%;border-radius:999px;background:var(--primary-600);transform:scaleX(var(--progress,0));transform-origin:left;transition:transform .55s cubic-bezier(.33,1,.68,1)}
.amb-steps{margin:0}
.amb-steps li{border-right:0;padding-top:var(--pad)}
/* badge placeholder sits on the rail, masking it so the line reads as a milestone track */
.amb-steps__badge{position:relative;z-index:1;height:var(--bh);width:var(--bh);margin:0 0 18px;border:none;border-radius:18px;background:var(--primary-500)}
.amb-steps__badge image-slot{display:block;width:100%;height:100%}
.amb-steps__n{display:inline-flex;align-items:center;border:1.5px solid var(--primary-600);border-radius:999px;padding:4px 13px;font-size:14px;font-weight:600;letter-spacing:.04em;color:var(--primary-600);font-variant-numeric:tabular-nums}
.amb-steps h3{margin:16px 0 8px;font-size:19px;font-weight:600;line-height:1.25;color:#071838}
.amb-steps p{margin:0;font-size:16.5px;line-height:1.6;color:#5b6066}

/* tiers */
.amb-tiers__head{display:grid;grid-template-columns:1.18fr .82fr;gap:48px;align-items:end}
.amb-tiers__head .blead{margin:0}
.tiers{margin-top:52px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.tier{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1.5px solid var(--border);border-radius:24px;padding:34px 30px 30px}
.tier--featured{background:#03050c;border-color:#03050c}
.tier__flag{position:absolute;top:-13px;left:30px;display:inline-flex;align-items:center;gap:6px;background:var(--primary-600);color:#fff;font-size:13px;font-weight:600;letter-spacing:.02em;border-radius:999px;padding:6px 14px}
.tier__flag svg{width:14px;height:14px;flex:0 0 auto}
.tier__ico{margin-bottom:16px}
.tier__name{margin:0;font-size:21px;font-weight:600;letter-spacing:-0.012em;color:#071838}
.tier--featured .tier__name{color:#fff}
.tier__range{margin:6px 0 0;font-size:15.5px;color:#5b6066}
.tier--featured .tier__range{color:#ACB6DE}
.tier__pct{display:flex;align-items:center;gap:14px;margin:26px 0 0;padding:0 0 24px;border-bottom:1px solid var(--border-soft)}
.tier--featured .tier__pct{border-bottom-color:rgba(255,255,255,.14)}
.tier__pct b{font-size:52px;font-weight:700;letter-spacing:-0.03em;line-height:1;color:var(--primary-600)}
.tier--featured .tier__pct b{color:#fff}
.tier__pct span{font-size:14.5px;line-height:1.45;color:#5b6066}
.tier--featured .tier__pct span{color:#ACB6DE}
.tier__list{list-style:none;margin:22px 0 28px;padding:0;display:flex;flex-direction:column;gap:11px;flex:1}
.tier__list li{position:relative;padding-left:26px;font-size:16px;line-height:1.55;color:#3d434d}
.tier--featured .tier__list li{color:#C8CFEA}
.tier__list li::before{content:"";position:absolute;left:0;top:6px;width:16px;height:16px;border-radius:50%;background:var(--primary-50);box-shadow:inset 0 0 0 1px var(--primary-100)}
.tier__list li::after{content:"";position:absolute;left:4.6px;top:10.4px;width:7px;height:4px;border-left:1.8px solid var(--primary-600);border-bottom:1.8px solid var(--primary-600);transform:rotate(-45deg)}
.tier--featured .tier__list li::before{background:rgba(255,255,255,.22);box-shadow:none}
.tier--featured .tier__list li::after{border-color:#fff}
.tier__cta{width:100%;justify-content:center;border-radius:999px;font-size:16px;font-weight:600;padding:14px 22px}
.btn--secondary.tier__cta{border:1px solid #2F54E0!important;color:#2F54E0!important;background:#fff}
.amb-tiers__note{margin:34px auto 0;width:92%;display:flex;gap:18px;align-items:center;background:#F4F5FB;border:1.5px solid var(--border);border-radius:22px;box-shadow:none;padding:24px 26px;text-align:left}
.amb-tiers__note svg{width:21px;height:21px;flex:0 0 auto;box-sizing:content-box;padding:11.5px;border-radius:12px;background:#D6E0FF;color:var(--primary-600)}
.amb-tiers__note p{margin:0;font-size:17px;line-height:1.6;color:#5b6066;text-wrap:pretty}

/* kit */
.amb-kit__grid{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center}
.amb-kit__copy .blead{margin:20px 0 30px}
.amb-kit__list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.amb-kit__list li{display:flex;align-items:center;gap:16px;background:#fff;border:1.5px solid var(--border);border-radius:22px;padding:18px 20px;font-size:16.5px;line-height:1.45;color:#071838}
.amb-kit__list svg,.amb-kit__ico{width:21px;height:21px;flex:0 0 auto;display:block;object-fit:contain;color:var(--primary-600)}
.amb-kit__list li>svg,.amb-kit__ico{box-sizing:content-box;padding:11.5px;border-radius:12px;background:var(--primary-50)}

/* rules */
.amb-rules__head{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end}
.amb-rules__head .blead{margin:0}
.rules{margin-top:52px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rule{display:flex;gap:16px;align-items:flex-start;background:#F4F5FB;border:1.5px solid var(--border);border-radius:22px;padding:24px 24px 26px}
.rule__body{min-width:0}
.rule__title{margin:0 0 6px;font-size:18px;font-weight:600;letter-spacing:-0.012em;color:#071838}
.rule__txt{margin:0;font-size:16px;line-height:1.62;color:var(--text-muted)}
.amb-rules__note{margin:32px 0 0;font-size:15.5px;line-height:1.6;color:var(--text-muted)}

/* final CTA */
.amb .final{padding-top:56px}
.amb-final__micro{margin:16px 0 0;font-size:15px;color:#7c84a2}

/* modal — two columns */
.amb-modal .bmodal__panel{max-width:920px}
.ambm{display:grid;grid-template-columns:.82fr 1fr}
.ambm[hidden]{display:none}
.ambm__aside{background:#03050c;color:#fff;padding:38px 32px;display:flex;flex-direction:column;justify-content:center;border-radius:var(--radius-lg) 0 0 var(--radius-lg)}
.ambm__aside h3{margin:0;font-size:25px;font-weight:600;line-height:1.2;letter-spacing:-0.02em;color:#fff;text-wrap:balance}
.ambm__aside p{margin:14px 0 24px;font-size:15.5px;line-height:1.6;color:#ACB6DE}
.ambm__aside ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:13px}
.ambm__aside li{display:flex;align-items:flex-start;gap:10px;font-size:15px;line-height:1.45;color:#E4E8F6}
.ambm__aside svg{width:17px;height:17px;flex:0 0 auto;margin-top:2px;color:#7d94ff}
.ambm__form{padding:32px 32px 30px;display:flex;flex-direction:column;gap:13px}
.ambm__form .field label{font-size:13.5px;margin-bottom:5px}
.ambm__form input[type=text],.ambm__form input[type=email],.ambm__form input[type=tel],.ambm__form select{padding:11px 12px;font-size:15px}
.ambm__form .consent{font-size:12.5px;line-height:1.5}
.ambm__micro{display:flex;gap:10px;align-items:flex-start;margin:0;font-size:12.5px;line-height:1.5;color:var(--text-muted)}
.ambm__micro svg{width:17px;height:17px;flex:0 0 auto;margin-top:2px;color:var(--primary-600)}

@media (max-width:980px){
  .amb-premise__grid,.amb-kit__grid,.amb-tiers__head,.amb-rules__head{grid-template-columns:1fr;gap:28px}
  .amb-premise__shot{flex:0 0 auto;height:auto;aspect-ratio:1029/503;min-height:0;margin-top:20px}
  .rules{grid-template-columns:repeat(2,1fr)}
  .amb-tiers__head{align-items:start}
  .tiers{grid-template-columns:1fr;gap:26px}
  .ambm{grid-template-columns:1fr}
  .ambm__aside{border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:30px 26px}
}
@media (max-width:640px){
  .amb .bhero{padding-top:112px;padding-bottom:0;min-height:100svh}
  .amb .bhero__title{font-size:min(40px,(100vw - 40px) / 11.6)}
  .amb-ticker{margin-top:0;margin-bottom:0;padding:15px 0}
  .amb-seals{gap:0 30px;padding-right:15px}
  .amb-seals li{font-size:14.5px;gap:8px}
  .amb-seals svg{width:16px;height:16px}
  .amb-kit__list li{font-size:15.5px;padding:14px 16px;gap:14px}
  .amb-kit__list svg,.amb-kit__ico{width:19px;height:19px;padding:9.5px;border-radius:11px}
  .amb-rules__head{grid-template-columns:1fr;gap:24px;align-items:start}
  .rules{grid-template-columns:1fr;gap:14px}
  .rule{padding:20px 20px 22px;gap:14px}
  .ico-tile{width:38px;height:38px;border-radius:11px}
  .ico-tile svg{width:19px;height:19px}
  .rule__title{font-size:17px}
  .rule__txt{font-size:15.5px}
  .ambm__form{padding:24px 20px 24px}
}

/* final CTA — plain white section with an image placeholder (no navy card) */
.amb .bsection.final{background:#fff!important}
.amb-final__plain{display:grid;grid-template-columns:1fr .92fr;gap:64px;align-items:center}
.amb-final__plain .final__title{color:#071838!important}
.amb-final__plain .final__lead{color:var(--text-muted)!important;max-width:520px}
.amb-final__shot{border-radius:22px;overflow:hidden;background:#F4F5FB;border:1.5px solid var(--border)}
.amb-final__shot image-slot{display:block;width:100%;aspect-ratio:4/3}
@media (max-width:900px){
  .amb-final__plain{grid-template-columns:1fr;gap:34px}
  .amb-final__plain .final__copy{order:2}
  .amb-final__shot{order:1}
}
.amb-final__plain .final__cta{background:var(--primary-600)!important;color:#fff!important;border-color:var(--primary-600)!important}
.amb-final__plain .final__cta:hover{background:#151e3a!important;border-color:#151e3a!important;color:#fff!important}

@media (max-width:900px){
  /* rail turns vertical and runs down through the badge centres */
  .amb-track{--bh:76px}
  .amb-rail{left:calc(var(--bh)/2 - 6px);right:auto;top:var(--pad);bottom:calc(var(--pad) + var(--bh)/2);width:12px;height:auto}
  .amb-rail__fill{width:100%;height:100%;transform:scaleY(var(--progress,0));transform-origin:top}
  .amb-steps{grid-template-columns:1fr}
  .amb-steps li{padding:var(--pad) 0 10px}
  .amb-steps h3,.amb-steps p{max-width:none}
}
.amb .bsection--plain.faq-sec,.amb #faq.bsection{padding-top:64px!important;padding-bottom:64px!important}
.amb-btn-ico{height:1.15em;width:auto;flex:none;display:block}
/* tier CTAs — hover states */
.tiers .tier__cta.btn--secondary:hover{background:var(--primary-600)!important;color:#fff!important;border-color:var(--primary-600)!important}
.tiers .tier--featured .tier__cta.btn--primary:hover{background:#fff!important;color:#071838!important;border-color:#fff!important}
.amb .bsection.final{padding-top:48px!important}
/* final CTA text aligns to the page grid (drops the old card padding) */
.amb-final__plain .final__copy{padding:0!important}
@media (max-width:900px){.amb-final__plain .final__copy{padding:0!important}}
/* tier header row — tile (and flag on the featured card) share one baseline */
.tier__top{display:contents}
.tier__top .tier__ico{margin:0!important;flex:none}
.tier__top .tier__flag{margin:0!important}
.tier__medal{display:block;width:100%;height:100%;object-fit:contain}
.tier__head .ico-tile{display:grid;place-items:center;width:56px;height:56px;padding:5px;box-sizing:border-box}
/* badge keeps its original box; the medal overflows outside it */
.amb-over{position:relative;display:inline-flex;align-items:center}
.amb-over{padding-left:56px}
.amb-over__ico{position:absolute;left:-6px;top:50%;flex:none;display:block;pointer-events:none;transform-origin:center;animation:ambFloat 3.6s ease-in-out infinite;filter:drop-shadow(0 8px 14px rgba(7,24,56,.22))}
/* continuous sheen sweeping across the medal */
.amb-over::after{content:"";position:absolute;left:-6px;top:50%;width:50px;height:65px;pointer-events:none;background-image:linear-gradient(104deg,transparent 34%,rgba(255,255,255,.18) 44%,rgba(255,255,255,.72) 50%,rgba(255,255,255,.18) 56%,transparent 66%);background-repeat:no-repeat;background-size:230% 100%;animation:ambFloat 3.6s ease-in-out infinite,ambSheen 6.5s cubic-bezier(.42,0,.58,1) infinite;-webkit-mask-image:url("assets/badge-kyon.png");mask-image:url("assets/badge-kyon.png");-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
@keyframes ambFloat{0%,100%{translate:0 -50%}50%{translate:0 calc(-50% - 6px)}}
@keyframes ambSheen{0%{background-position:160% 50%}38%,100%{background-position:-60% 50%}}
@media (prefers-reduced-motion:reduce){.amb-over__ico,.amb-over::after{animation:none}}
/* tile sits inline, left of the tier name */
.tier__head{display:flex;align-items:center;gap:14px;margin:0 0 10px}
.tier__head .tier__ico{margin:0!important;flex:none}
.tier__head .tier__name{margin:0!important}
.tier__top:empty{display:none}
.tier__top{min-height:0}
.tier__headtxt{min-width:0}
.tier__headtxt .tier__name{margin:0!important}
.tier__headtxt .tier__range{margin:4px 0 0!important}
/* icon overflows the tile for a 3D pop */
.amb-steps__img{position:absolute;left:50%;top:62%;width:116px;height:116px;transform:translate(-50%,-50%);object-fit:contain;filter:drop-shadow(0 10px 16px rgba(7,24,56,.18));pointer-events:none}
/* steps stay desaturated until the rail reaches them */
.amb-steps li .amb-steps__badge{background:#C9CDD6;transition:background .35s ease}
.amb-steps li .amb-steps__img{filter:grayscale(1) contrast(.92) drop-shadow(0 10px 16px rgba(7,24,56,.10));opacity:.62;transition:filter .35s ease,opacity .35s ease}
.amb-steps li:first-child .amb-steps__badge,.amb-steps li.is-on .amb-steps__badge{background:var(--primary-500)}
.amb-steps li:first-child .amb-steps__img,.amb-steps li.is-on .amb-steps__img{filter:drop-shadow(0 10px 16px rgba(7,24,56,.18));opacity:1}
@media (prefers-reduced-motion:reduce){.amb-steps li .amb-steps__badge,.amb-steps li .amb-steps__img{transition:none}}
/* number pills follow the rail too: muted first, blue once reached */
.amb-steps li .amb-steps__n{border-color:#5b6066;color:#5b6066;transition:border-color .35s ease,color .35s ease}
.amb-steps li:first-child .amb-steps__n,.amb-steps li.is-on .amb-steps__n{border-color:var(--primary-600);color:var(--primary-600)}
@media (prefers-reduced-motion:reduce){.amb-steps li .amb-steps__n{transition:none}}
/* step icons float gently and continuously, staggered per step */
.amb-steps__img{animation:ambStepFloat 4.2s ease-in-out infinite}
.amb-steps li:nth-child(2) .amb-steps__img{animation-delay:-.9s}
.amb-steps li:nth-child(3) .amb-steps__img{animation-delay:-1.8s}
.amb-steps li:nth-child(4) .amb-steps__img{animation-delay:-2.7s}
@keyframes ambStepFloat{0%,100%{translate:0 0}50%{translate:0 -5px}}
@media (prefers-reduced-motion:reduce){.amb-steps__img{animation:none}}
/* short viewports (preview pane not fullscreen): keep the blue ticker fully in view */
@media (max-height:860px){
  .amb .bhero{padding-top:112px}
  .amb .bhero__inner{padding-bottom:56px!important;min-height:0}
}
@media (max-height:720px){
  .amb .bhero{padding-top:96px;min-height:0}
  .amb .bhero__inner{padding-bottom:36px!important}
  .amb-ticker{padding:16px 0}
}
/* callout icon = the menu button's medal mark, tinted blue */
.amb-callout__ico{display:block;width:21px;height:21px;background:var(--primary-600);-webkit-mask:url("assets/icon-embaixador.png") center/contain no-repeat;mask:url("assets/icon-embaixador.png") center/contain no-repeat}
.amb-final__shot img{display:block;width:100%;height:100%;object-fit:cover}

/* ══════ MOBILE refinements (Embaixadores) ══════ */
@media (max-width:640px){
  /* hero: badge + medal align to the headline's left margin, nudged up */
  .amb .bhero__inner{align-items:stretch}
  .amb-over{align-self:flex-start;margin-top:0;margin-left:0;margin-bottom:14px;padding-left:52px}
  .amb-over__ico{left:-4px}
  /* headline +4px, ticker text +2px */
  .amb .bhero__title{font-size:min(44px,(100vw - 40px) / 10.6)!important}
  .amb-seals li{font-size:16.5px}

  /* premise: image above the title, copy pulled up, callout text +2px */
  .amb-premise__side{display:flex;flex-direction:column}
  .amb-premise__side .bsection__title{order:2;margin-top:18px}
  .amb-premise__shot{order:1;margin-top:0}
  .amb-premise__copy{margin-top:-10px}
  .amb-premise__copy .blead{margin-top:0}
  .amb-callout p{font-size:18.5px!important}

  /* how it works: eyebrow +4px, title matched to the tiers heading */
  .amb-how .demo__eyebrow{font-size:26px!important}
  .amb-how .demo__title{font-size:clamp(28px,8.4vw,36px)!important}

  /* vertical timeline: rail runs down the tile centres, content beside it */
  .amb-track{--bh:56px;--pad:0px;--gap:26px;margin-top:22px!important}

  /* tiers: Embaixador → Prata → Ouro */
  .tiers .tier{order:0}
  .tier--featured{order:0!important}

  /* kit: CTA below the cards, centred */
  .amb-kit__grid{display:flex;flex-direction:column}
  .amb-kit__copy{display:contents}
  .amb-kit__copy .bsection__title{order:1}
  .amb-kit__copy .blead{order:2;margin-bottom:22px}
  .amb-kit__list{order:3}
  .amb-kit__copy .btn{order:4;align-self:center;margin-top:26px}
}

/* ≤980px: the four steps stack, so the rail becomes deterministic vertical
   segments running badge-centre to badge-centre (ends at step 04 by construction) */
@media (max-width:980px){
  .amb-track{--bh:56px;--pad:0px;--gap:26px}
  /* the single rail is replaced by per-step segments, so the line ends at the
     last badge centre by construction — no JS-measured inset involved */
  .amb-rail{display:none}
  .amb-steps li:not(:last-child)::before,
  .amb-steps li:not(:last-child)::after{content:"";position:absolute;left:calc(var(--bh)/2 - 6px);top:calc(var(--bh)/2);width:12px;height:calc(100% + var(--gap));border-radius:999px;pointer-events:none}
  .amb-steps li:not(:last-child)::before{background:var(--border)}
  .amb-steps li:not(:last-child)::after{background:var(--primary-600);transform:scaleY(0);transform-origin:top;transition:transform .45s ease}
  .amb-steps li:not(:last-child):has(+ li.is-on)::after{transform:scaleY(1)}
  .amb-steps{grid-template-columns:1fr;gap:var(--gap)}
  .amb-steps li{display:grid;grid-template-columns:var(--bh) minmax(0,1fr);column-gap:20px;padding:0;border-right:0}
  .amb-steps__badge{grid-row:1;grid-column:1;margin:0}
  .amb-steps__n{grid-row:1;grid-column:2;align-self:center;justify-self:start}
  .amb-steps li h3{grid-column:2;margin-top:12px}
  .amb-steps li p{grid-column:2}
  .amb-steps__img{width:86px;height:86px}
}

/* ══════ MOBILE pass 2 (Embaixadores) ══════ */
@media (max-width:640px){
  /* hero: 3D medal sits ABOVE the pill, pill flush to the headline margin */
  .amb-over{position:relative;margin-left:0;padding-left:16px;padding-right:16px;margin-top:0}
  .amb-over__ico{left:0;top:auto;bottom:calc(100% + 12px);transform:none;width:76px!important;height:99px!important}
  @keyframes ambFloat{0%,100%{translate:0 0}50%{translate:0 -6px}}
  .amb-over::after{left:0;top:auto;bottom:calc(100% + 12px);width:76px;height:99px}
  /* headline +2px */
  .amb .bhero__title{font-size:min(46px,(100vw - 40px) / 10.2)!important}

  /* premise: image top margin matches its side margins, block pulled up */
  .amb-premise{padding-top:20px!important}
  .amb-premise__shot{margin-top:0}
  .amb-premise__side .bsection__title{margin-top:20px}
  /* callout: breathing room above + text +2px */
  .amb-callout{margin-top:22px!important}
  .amb-callout p{font-size:20.5px!important}

  /* "Simples do começo ao fim" +6px */
  .amb-how .demo__title{font-size:clamp(34px,10vw,42px)!important}

  /* tiers: lead sits closer to the first card, more air between cards */
  .amb-tiers__head{gap:16px!important}
  .amb-tiers__head .blead{margin-bottom:0!important}
  .tiers{margin-top:26px!important;gap:34px!important}

  /* kit heading aligns to the wrap and sits closer to its lead */
  .amb-kit__grid{gap:0;align-items:stretch}
  .amb-kit__copy .bsection__title{margin:0 0 14px}
  .amb-kit__copy .blead{margin-top:0!important;margin-bottom:22px!important}

  /* footer was clipped by the section's overflow/height constraints */
  .amb .foot{overflow:visible}
  .amb .foot__inner{display:flex;flex-direction:column;gap:28px}
  .amb .foot__bar{flex-direction:column;align-items:flex-start;gap:14px}
}

/* ══════ MOBILE pass 3 (Embaixadores) ══════ */
@media (max-width:640px){
  /* bigger medal, badge + content nudged further down */
  .amb-over__ico{width:92px!important;height:120px!important;bottom:calc(100% + 14px)}
  .amb-over::after{width:92px;height:120px;bottom:calc(100% + 14px)}

  /* "Simples do começo ao fim" +4px */
  .amb-how .demo__title{font-size:clamp(38px,11vw,46px)!important}

  /* more air above the programme callout */
  .amb-callout{margin-top:38px!important}

  /* first tier card sits closer to the lead */
  .tiers{margin-top:14px!important}

  /* kit heading follows the wrap margin like the other section titles */
  .amb-kit__copy .bsection__title,
  .amb-kit__copy .blead,
  .amb-kit__list{width:100%;align-self:stretch;margin-left:0;margin-right:0}
}
@media (max-width:640px){
  /* final CTA headline +6px on mobile (overrides the inline 59px) */
  .amb-final__plain .final__title{font-size:clamp(36px,10.4vw,44px)!important;line-height:1.1!important}
}
@media (max-width:640px){
  /* slightly larger medal, hero content pushed down toward the ticker */
  .amb-over__ico{width:104px!important;height:136px!important;bottom:calc(100% + 16px)}
  .amb-over::after{width:104px;height:136px;bottom:calc(100% + 16px)}
}
@media (max-width:640px){
  /* nudge the whole hero stack (medal + content) closer to the ticker */
}
@media (max-width:640px){
}
@media (max-width:640px){
}
@media (max-width:640px){
  /* hero stack (medal + copy) centred between the header and the ticker;
     the ticker keeps its original place at the bottom of the section */
  .amb .bhero__inner{justify-content:center;padding-top:150px!important;padding-bottom:64px!important}
  .amb-over{margin-top:0}
}

/* Do kyonmed.css do export (unica diferenca p/ o kyonmed.css do projeto, que e
   compartilhado com /beta-testers): botao da comunidade WhatsApp no rodape,
   abaixo de "Preciso de ajuda". Fica aqui para nao mexer no arquivo compartilhado. */
.foot__brand{display:flex;flex-direction:column;align-items:flex-start}
.foot__wa{margin-top:10px!important}
