/* Cyrinho lives in native page transitions and small, visitor-triggered moments. */
.ccr-truck-window{display:block;position:relative;aspect-ratio:1.4;overflow:hidden;isolation:isolate;width:100%}
.ccr-truck-sprite{position:absolute;left:0;top:50%;width:100%;aspect-ratio:1;transform:translateY(-50%);background:url('assets/cyrinho-caminhao-frame-1.webp') 50% 50%/100% 100% no-repeat;background-color:#f6f6f3;background-blend-mode:multiply}
@keyframes ccr-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes ccr-road-move{to{background-position:-104px 0}}
.is-waving .ccr-truck-window{animation:ccr-bounce .32s ease-in-out infinite}
.ccr-hello{position:relative;min-width:0}
.ccr-wave-button{appearance:none;display:block;width:100%;padding:0;background:transparent;border:0;text-align:inherit}
.ccr-wave-button:disabled{cursor:default}
.ccr-wave-hint{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--orange-dark);font-size:11px;font-weight:650;letter-spacing:.2px;line-height:1.4;margin-top:8px}
.ccr-wave-hint span{font-size:17px}
.ccr-greeting{min-height:2em;margin:12px 0 0;text-align:center;color:var(--muted);font-size:12px;line-height:1.65}
.cyrinho-invite-photo.ccr-hello{width:230px;height:auto;overflow:visible;background:transparent;border-radius:0}
.cyrinho-invite-photo .ccr-greeting{font-size:11px;max-width:220px}
.cyrinho-profile.ccr-hello{background:#f6f6f3;transform:rotate(1deg)}
.cyrinho-profile.ccr-hello .ccr-wave-button{padding:26px 17px 12px}
.cyrinho-profile.ccr-hello .ccr-greeting{margin:0;padding:0 20px 20px;min-height:45px;color:var(--muted)}
.cyrinho-profile.ccr-hello figcaption{background:var(--dark)}
.ccr-transition{display:none;position:fixed;inset:0;z-index:10000;background:var(--paper,#f6f6f3);align-items:center;justify-content:center;overflow:hidden;touch-action:none}
.ccr-arriving::before{content:"";position:fixed;inset:0;background:#f6f6f3;z-index:9999;pointer-events:none}
.ccr-leaving .ccr-transition,.ccr-arriving .ccr-transition{display:flex}
.ccr-leaving,.ccr-arriving{overflow:hidden}
.ccr-transition-inner{width:min(620px,calc(100% - 36px));text-align:center;padding:30px 0}
.ccr-transition-brand{display:block;color:var(--ink);font-size:11px;letter-spacing:2px;font-weight:650;margin-bottom:12px}
.ccr-transition-brand i{font-style:normal;color:var(--orange);margin:0 12px}
.ccr-trip{position:relative;width:100%;padding-bottom:15px;margin:0 auto 20px}
.ccr-travel{position:relative;width:77%;max-width:460px;margin:auto;will-change:transform}
.ccr-transition .ccr-truck-window{z-index:1;animation:none}
.ccr-transition .ccr-truck-sprite{animation:none;background-position:50% 50%}
.ccr-transition .ccr-travel::before,.ccr-transition .ccr-travel::after{content:"";position:absolute;z-index:0;left:4%;bottom:17%;width:13px;height:13px;border-radius:50%;background:#a4a89f;box-shadow:10px -5px 0 -3px #c2c5be,20px -11px 0 -5px #d2d4cf;opacity:0;pointer-events:none;animation:ccr-exhaust 1.05s ease-out infinite}
.ccr-transition .ccr-travel::before{animation-delay:-.18s}
.ccr-transition .ccr-travel::after{width:9px;height:9px;animation-delay:-.68s}
.ccr-road{display:block;height:3px;width:100%;background:repeating-linear-gradient(90deg,#a4a89f 0 28px,transparent 28px 52px);animation:ccr-road-move .75s linear infinite;opacity:.65}
.ccr-transition-title{font-family:var(--heading);font-weight:700;font-size:clamp(27px,4vw,42px);letter-spacing:-1.1px;line-height:1.15;margin:0 0 14px;color:var(--ink)}
.ccr-transition-status{font-size:14px;margin:0;color:var(--muted)}
@keyframes ccr-drive-in{from{transform:translateX(-50vw)}to{transform:translateX(0)}}
@keyframes ccr-drive-out{to{transform:translateX(85vw);opacity:0}}
@keyframes ccr-overlay-out{to{opacity:0}}
@keyframes ccr-exhaust{0%{transform:translate(5px,0) scale(.45);opacity:0}18%{opacity:.42}100%{transform:translate(-58px,-27px) scale(1.75);opacity:0}}
.ccr-leaving .ccr-travel{animation:ccr-drive-in .62s cubic-bezier(.18,.72,.28,1) both}
.ccr-trip-ending .ccr-travel{animation:ccr-drive-out .5s cubic-bezier(.55,.08,.8,.45) both}
.ccr-trip-ending .ccr-transition{animation:ccr-overlay-out .22s .28s ease-in both}
.ccr-guide{position:fixed;right:24px;bottom:22px;z-index:100;max-width:calc(100vw - 32px)}
.modal-open .ccr-guide,.ccr-leaving .ccr-guide,.ccr-arriving .ccr-guide{visibility:hidden}
.ccr-guide-toggle{display:flex;align-items:center;gap:11px;border:1px solid #d9ddd4;border-radius:50px;padding:7px 16px 7px 9px;background:#f6f6f3;box-shadow:0 5px 24px #15201526;text-align:left;font-size:14px;line-height:1.3;font-weight:700;color:var(--ink);min-height:64px}
.ccr-guide-toggle>span>small{display:block;font-size:10px;line-height:1.4;color:var(--muted);font-weight:500;margin-top:3px}
.ccr-guide-avatar{width:66px;flex:none;display:block}
.ccr-guide-plus{font-size:21px;color:var(--orange-dark);margin-left:4px;transition:transform .2s}
.ccr-guide.is-open .ccr-guide-plus{transform:rotate(45deg)}
.ccr-guide-panel{position:absolute;right:0;bottom:calc(100% + 13px);width:min(340px,calc(100vw - 48px));max-height:min(560px,calc(100dvh - 114px));overflow:auto;background:var(--paper);border:1px solid #d9ddd4;box-shadow:0 12px 40px #111b1426;border-radius:12px;padding:25px 25px 20px}
.ccr-guide-close{position:absolute;top:8px;right:9px;background:transparent;border:0;width:44px;height:44px;font-size:25px;color:var(--muted)}
.ccr-guide-eyebrow{font-size:8px;font-weight:700;letter-spacing:1.2px;color:var(--orange-dark);display:block;margin:8px 0 14px}
.ccr-guide-panel h2{font-family:var(--heading);font-size:36px;line-height:1.1;letter-spacing:-1.2px;margin:0 0 12px}
.ccr-guide-panel>p{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 18px}
.ccr-guide-panel nav{display:grid;gap:7px}
.ccr-guide-panel nav a,.ccr-guide-panel nav button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;font-size:12px;font-weight:600;line-height:1.6;border:1px solid var(--line);background:white;padding:12px 13px;border-radius:5px;text-align:left;min-height:46px}
.ccr-guide-panel nav a:hover,.ccr-guide-panel nav button:hover{border-color:var(--orange);background:#fff4e8}
.ccr-guide-panel nav button{background:var(--orange);border-color:var(--orange);color:#221a13}
.ccr-guide-panel>small{font-size:9px;line-height:1.7;display:block;margin-top:16px;color:var(--muted)}
@media(max-width:820px){.cyrinho-invite-photo.ccr-hello{width:190px}.cyrinho-invite>.text-link{margin-left:212px}}
@media(max-width:580px){.ccr-guide{right:16px;bottom:16px}.ccr-guide-toggle{padding:6px 12px 6px 7px;min-height:58px;gap:8px;font-size:13px}.ccr-guide-avatar{width:54px}.ccr-guide-toggle>span>small{font-size:9px}.cyrinho-invite-photo.ccr-hello{width:170px;margin:auto}.cyrinho-invite>.text-link{margin-left:0}.cyrinho-invite-photo .ccr-greeting{font-size:10px}.ccr-transition-brand{font-size:9px;letter-spacing:1px}.ccr-transition-title{font-size:30px}.ccr-travel{width:94%}.ccr-transition-status{font-size:12px}.cyrinho-profile.ccr-hello .ccr-wave-button{padding:20px 10px 12px}.ccr-guide-panel{padding:22px 20px 18px}}
@media(prefers-reduced-motion:reduce){.ccr-truck-sprite,.ccr-truck-window,.ccr-road,.ccr-travel,.ccr-transition{animation:none!important;transition:none!important}.ccr-transition,.ccr-arriving::before{display:none!important}.ccr-guide-plus{transition:none}.ccr-leaving,.ccr-arriving{overflow:auto}}

/* Keep footer links above the floating guide. */
.footer-bottom{padding-bottom:100px}

/* Central de Ajuda: uma decisão por vez, com retorno de foco previsível. */
.ccr-guide-panel{width:min(390px,calc(100vw - 48px));padding:27px 25px 20px}
.ccr-guide-view[hidden]{display:none}
.ccr-guide-view>p{font-size:13px;line-height:1.75;color:var(--muted);margin:0 0 18px}
.ccr-guide-options{display:grid;gap:8px}
.ccr-guide-options a,.ccr-guide-options button,.ccr-order-choices button{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:49px;padding:12px 14px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font:600 12px/1.45 var(--font);text-align:left;transition:border-color .2s,background-color .2s,transform .2s}
.ccr-guide-options a:hover,.ccr-guide-options button:hover,.ccr-order-choices button:hover{border-color:var(--orange-dark);background:#fff5eb;transform:translateX(2px)}
.ccr-guide-options .ccr-guide-primary{min-height:66px;background:var(--orange);border-color:var(--orange);color:#211a14}
.ccr-guide-options .ccr-guide-primary:hover{background:#ff7718;border-color:#ff7718;color:#211a14}
.ccr-guide-options strong,.ccr-order-choices strong{display:block;font-family:var(--heading);font-size:16px;line-height:1.25;letter-spacing:-.2px}
.ccr-guide-options small,.ccr-order-choices small{display:block;margin-top:3px;color:#64594f;font-size:10px;font-weight:500;line-height:1.45}
.ccr-guide-options a>span:last-child,.ccr-guide-options button>span:last-child,.ccr-order-choices button>span:last-child{color:var(--orange-dark);font-size:19px;flex:none}
.ccr-guide-primary>span:last-child{color:#211a14!important}
.ccr-guide-back{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:5px 4px;margin:0 0 5px;border:0;background:transparent;color:var(--muted);font:600 11px/1.3 var(--font)}
.ccr-guide-back:hover{color:var(--orange-dark)}
.ccr-order-choices{display:grid;gap:9px}
.ccr-order-choices button{min-height:76px;padding:14px}
.ccr-order-choices button:first-child{background:#fffaf4}
.ccr-order-choices button:last-child{background:#252a24;color:#fff;border-color:#252a24}
.ccr-order-choices button:last-child small{color:#c4cabf}
.ccr-order-choices button:last-child:hover{background:#333a31;border-color:var(--orange)}
.ccr-guide-footnote{font-size:9px;line-height:1.7;display:block;margin-top:15px;color:var(--muted)}

/* Aparições do Cyrinho integradas às tarefas de cada seção. */
.cyrinho-helper{position:relative;isolation:isolate;display:grid;align-items:center;gap:24px;overflow:hidden;border:1px solid var(--line);border-radius:10px}
.cyrinho-helper img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.cyrinho-helper:hover img,.cyrinho-helper:focus-within img{transform:none}
.cyrinho-helper-copy{position:relative;z-index:1;min-width:0}
.cyrinho-helper-kicker{display:block;margin:0 0 7px;color:var(--orange-dark);font-size:9px;font-weight:750;letter-spacing:1.35px}
.cyrinho-helper h3{margin:0 0 7px;font-family:var(--heading);font-size:clamp(22px,2.1vw,29px);line-height:1.12;letter-spacing:-.7px}
.cyrinho-helper p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}
.cyrinho-helper-action{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:48px;padding:12px 15px;border:1px solid currentColor;border-radius:4px;background:transparent;color:inherit;font:650 11px/1.4 var(--font);text-align:left;transition:background-color .2s,color .2s,border-color .2s,transform .2s}
.cyrinho-helper-action:hover{transform:translateY(-2px)}
.cyrinho-helper-action>span:last-child{font-size:19px;line-height:1}
.cyrinho-helper-retail{grid-template-columns:150px minmax(220px,1fr) auto;margin-top:40px;padding:0 24px 0 0;background:#eef1e8}
.cyrinho-helper-retail img{height:150px}
.cyrinho-helper-retail .cyrinho-helper-action{width:min(230px,100%);background:var(--orange);border-color:var(--orange);color:#211a14}
.cyrinho-helper-retail .cyrinho-helper-action:hover{background:#ff7718;border-color:#ff7718}
.cyrinho-helper-business{grid-template-columns:132px 1fr;margin-top:30px;padding:0 20px 0 0;border-color:#495044;background:#1f241e;color:#f7f7f2}
.cyrinho-helper-business img{height:132px;object-fit:contain;background:#111411}
.cyrinho-helper-business h3{font-size:24px;color:#fff}
.cyrinho-helper-business p{color:#bfc6ba}
.cyrinho-helper-business .cyrinho-helper-action{width:100%;margin-top:13px;border-color:#6d7668;color:#fff}
.cyrinho-helper-business .cyrinho-helper-action:hover{background:var(--orange);border-color:var(--orange);color:#211a14}
.cyrinho-helper-store{grid-template-columns:118px 1fr;margin:0 0 24px;padding:0 18px 0 0;background:#eef2e9}
.cyrinho-helper-store img{height:118px;object-fit:contain}
.cyrinho-helper-store h3{font-size:23px}
.cyrinho-helper-store .cyrinho-helper-action{width:100%;min-height:42px;margin-top:10px;padding:8px 0;border:0;border-top:1px solid #cbd2c5;border-radius:0;color:var(--orange-dark)}
.cyrinho-helper-store .cyrinho-helper-action:hover{transform:translateX(2px)}
.ccr-helper-ready [data-cyrinho-helper]{opacity:0;transform:translateY(18px)}
.ccr-helper-ready [data-cyrinho-helper].is-visible{opacity:1;transform:translateY(0);transition:opacity .5s ease,transform .5s cubic-bezier(.22,.8,.3,1)}

@media(max-width:820px){
  .cyrinho-helper-retail{grid-template-columns:125px 1fr;padding-right:18px}
  .cyrinho-helper-retail img{height:145px}
  .cyrinho-helper-retail .cyrinho-helper-action{grid-column:2;width:100%;margin:-13px 0 18px}
  .cyrinho-helper-business{grid-template-columns:92px minmax(0,1fr);gap:12px;padding-right:12px}
  .cyrinho-helper-business img{height:92px}
  .cyrinho-helper-store{grid-template-columns:92px 1fr;padding-right:13px}
  .cyrinho-helper-store img{height:92px}
}
@media(max-width:580px){
  .ccr-guide-panel{width:calc(100vw - 32px);max-height:calc(100dvh - 93px);padding:24px 18px 17px}
  .ccr-guide-panel h2{font-size:31px;margin-bottom:10px}
  .ccr-guide-options a,.ccr-guide-options button{min-height:48px}
  .ccr-guide-options .ccr-guide-primary{min-height:63px}
  .ccr-order-choices button{min-height:70px}
  .cyrinho-helper-retail{grid-template-columns:96px 1fr;gap:15px;margin-top:28px;padding:0 14px 0 0}
  .cyrinho-helper-retail img{height:132px}
  .cyrinho-helper-retail h3{font-size:23px}
  .cyrinho-helper-retail p{font-size:11px}
  .cyrinho-helper-retail .cyrinho-helper-action{grid-column:1/-1;margin:-2px 12px 14px;width:auto}
  .cyrinho-helper-business{grid-template-columns:100px 1fr;gap:14px;margin-top:25px;padding-right:13px}
  .cyrinho-helper-business img{height:100px}
  .cyrinho-helper-business h3{font-size:21px}
  .cyrinho-helper-business p{font-size:11px}
  .cyrinho-helper-business .cyrinho-helper-action{font-size:10px;padding:10px}
  .cyrinho-helper-store{grid-template-columns:91px 1fr;gap:14px;margin-bottom:21px;padding-right:12px}
  .cyrinho-helper-store img{height:91px}
  .cyrinho-helper-store h3{font-size:20px}
}
@media(prefers-reduced-motion:reduce){
  .ccr-guide-options a,.ccr-guide-options button,.ccr-order-choices button,.cyrinho-helper img,.cyrinho-helper-action,.ccr-helper-ready [data-cyrinho-helper],.ccr-helper-ready [data-cyrinho-helper].is-visible{transition:none!important;transform:none!important}
  .ccr-helper-ready [data-cyrinho-helper]{opacity:1}
}

/* Recortes transparentes: o personagem atravessa o limite do card e ganha presença. */
.cyrinho-helper{overflow:visible;border-radius:16px;box-shadow:0 14px 42px #1720170d}
.cyrinho-helper::before{content:"";position:absolute;z-index:1;border-radius:50%;pointer-events:none}
.cyrinho-helper img{position:absolute;z-index:2;width:auto;object-fit:contain!important;background:transparent!important;filter:drop-shadow(0 13px 12px #121b132d);transform-origin:50% 100%;pointer-events:none;user-select:none}
.cyrinho-helper-copy,.cyrinho-helper-action{position:relative;z-index:3}
.cyrinho-helper:hover img,.cyrinho-helper:focus-within img{transform:none}
.cyrinho-helper-retail{grid-template-columns:minmax(0,1fr) minmax(190px,230px);gap:26px;min-height:164px;margin-top:78px;padding:27px 24px 27px 230px;background:linear-gradient(110deg,#eef2e9 0%,#f8faf5 72%)}
.cyrinho-helper-retail::before{left:25px;bottom:12px;width:165px;height:165px;background:#ff6a13;box-shadow:0 0 0 12px #ff6a1312}
.cyrinho-helper-retail img{left:-7px;bottom:0;width:230px;height:230px}
.cyrinho-helper-retail .cyrinho-helper-action{grid-column:2;align-self:center;width:100%;margin:0}
.cyrinho-helper-business{display:block;min-height:190px;margin-top:74px;padding:24px 18px 22px 190px;background:linear-gradient(125deg,#1c211b,#252c23);border-color:#4d5749}
.cyrinho-helper-business::before{left:8px;bottom:13px;width:155px;height:155px;background:#ff6a13;box-shadow:0 0 0 11px #ff6a1312}
.cyrinho-helper-business img{left:-27px;bottom:-1px;width:218px;height:218px}
.cyrinho-helper-business .cyrinho-helper-action{margin-top:15px}
.cyrinho-helper-store{display:block;min-height:146px;margin:46px 0 28px;padding:21px 16px 18px 165px;background:linear-gradient(110deg,#edf2e8,#fafbf7)}
.cyrinho-helper-store::before{left:13px;bottom:10px;width:125px;height:125px;background:#ff6a1324;border:1px solid #ff6a1354;box-shadow:0 0 0 9px #ff6a1309}
.cyrinho-helper-store img{left:-19px;bottom:0;width:181px;height:181px}

@media(max-width:820px){
  .cyrinho-helper-retail{grid-template-columns:minmax(0,1fr) 190px;min-height:155px;margin-top:68px;padding:22px 18px 22px 196px}
  .cyrinho-helper-retail::before{left:19px;width:145px;height:145px}
  .cyrinho-helper-retail img{left:-5px;width:198px;height:198px}
  .cyrinho-helper-retail .cyrinho-helper-action{grid-column:2;margin:0;width:100%}
  .cyrinho-helper-business{min-height:220px;margin-top:62px;padding:25px 14px 20px 128px}
  .cyrinho-helper-business::before{left:3px;bottom:17px;width:112px;height:112px}
  .cyrinho-helper-business img{left:-39px;width:171px;height:171px}
  .cyrinho-helper-business h3{font-size:21px}
  .cyrinho-helper-store{min-height:171px;margin-top:40px;padding:20px 13px 17px 124px}
  .cyrinho-helper-store::before{left:5px;bottom:17px;width:100px;height:100px}
  .cyrinho-helper-store img{left:-35px;width:160px;height:160px}
}
@media(max-width:580px){
  .cyrinho-helper{border-radius:14px}
  .cyrinho-helper-retail{display:block;min-height:225px;margin-top:68px;padding:21px 15px 17px 146px}
  .cyrinho-helper-retail::before{left:-1px;bottom:19px;width:125px;height:125px}
  .cyrinho-helper-retail img{left:-47px;bottom:0;width:194px;height:194px}
  .cyrinho-helper-retail .cyrinho-helper-action{width:100%;margin:15px 0 0}
  .cyrinho-helper-business{min-height:238px;margin-top:65px;padding:22px 13px 18px 146px}
  .cyrinho-helper-business::before{left:-2px;bottom:19px;width:124px;height:124px}
  .cyrinho-helper-business img{left:-52px;width:198px;height:198px}
  .cyrinho-helper-business h3{font-size:21px}
  .cyrinho-helper-business .cyrinho-helper-action{margin-top:13px}
  .cyrinho-helper-store{min-height:176px;margin-top:43px;padding:19px 12px 16px 132px}
  .cyrinho-helper-store::before{left:-1px;bottom:18px;width:108px;height:108px}
  .cyrinho-helper-store img{left:-50px;width:181px;height:181px}
}
