/* Approved offer-image banner shared by smartphone and desktop. */
.mobile-sticky{display:none}
@media screen{
.mobile-sticky{display:block;position:fixed;z-index:40;inset:auto 0 0;max-width:650px;margin:auto;padding:15px 8px max(8px,env(safe-area-inset-bottom));pointer-events:none;opacity:0;visibility:hidden;transform:translateY(105%);transition:transform .24s ease-out,opacity .2s ease-out,visibility .24s;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
.mobile-sticky.is-visible{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto}
.mobile-sticky-shell{position:relative;border:1px solid #e5bdc8;border-radius:16px;background:linear-gradient(110deg,#fffaf4 0%,#fff4f6 65%,#ffedf3 100%);box-shadow:0 -3px 24px #82425824,0 3px 12px #82425818;padding:15px 8px 5px}
.mobile-sticky-badge{position:absolute;left:14px;top:-14px;display:flex;align-items:center;gap:5px;margin:0;padding:5px 11px;border:1px solid #e5cba5;border-radius:7px;background:#fff4dc;color:#825d31;font-size:12px;font-weight:700;line-height:1.3;white-space:nowrap;box-shadow:0 2px 4px #9166370a}
.mobile-sticky-badge span{font-size:14px;margin-left:1px}
.mobile-sticky-badge svg{flex:none;color:#b68d4b}
.mobile-sticky-close{position:absolute;top:-21px;right:0;z-index:2;width:44px;height:44px;border:0;border-radius:50%;background:transparent;padding:7px;color:#89616d;cursor:pointer;display:grid;place-items:center}
.mobile-sticky-close span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#fff;border:1px solid #e3c1cd;font:22px/1 sans-serif;box-shadow:0 2px 5px #82425815}
.mobile-sticky-close:hover span{background:#ffedf3}
.mobile-sticky-link{display:grid;grid-template-columns:58px minmax(0,1fr) 116px;align-items:center;column-gap:8px;width:100%;min-height:88px;color:inherit;text-decoration:none;line-height:1.5;border-radius:10px}
.mobile-sticky-advisor{display:block;width:58px;height:86px;max-width:none;object-fit:cover;object-position:49% 50%;mix-blend-mode:multiply;align-self:end}
.mobile-sticky-copy{display:flex;flex-direction:column;gap:4px;min-width:0;padding:5px 0}
.mobile-sticky-name{display:block;color:#8f3554;font-size:15px;line-height:1.55;font-weight:750;white-space:nowrap;letter-spacing:-.02em}
.mobile-sticky-description{display:block;color:#795963;font-size:12px;line-height:1.55;overflow-wrap:anywhere}
.mobile-sticky-cta{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:64px;padding:8px 6px;border:2px solid #fff;border-radius:12px;background:linear-gradient(135deg,#cf5b7c,#bc3d63);box-shadow:0 3px 0 #a12f50,0 5px 10px #9b3e5c24;color:#fff;overflow:hidden}
.mobile-sticky-cta>span{font-size:11px;line-height:1.5}
.mobile-sticky-cta>strong{display:flex;align-items:center;justify-content:center;gap:5px;font-size:15px;line-height:1.5;white-space:nowrap;font-weight:750}
.mobile-sticky-cta b{font-size:22px;font-weight:500;line-height:1}
.mobile-sticky-cta::after{content:"";position:absolute;inset:-25% auto -25% -60%;width:35%;transform:skewX(-20deg);background:linear-gradient(90deg,transparent,#fff5,transparent);animation:sticky-shine 4.5s ease-in-out infinite;pointer-events:none}
.mobile-sticky-link:hover .mobile-sticky-cta{background:linear-gradient(135deg,#c95275,#ad3156)}
.mobile-sticky :focus-visible{outline:3px solid #8f3554;outline-offset:3px}
html.has-mobile-sticky{scroll-padding-bottom:var(--mobile-sticky-reserve,146px)}
}
@media(max-width:374px){
.mobile-sticky{padding-left:5px;padding-right:5px}
.mobile-sticky-shell{padding-left:5px;padding-right:7px}
.mobile-sticky-link{grid-template-columns:44px minmax(0,1fr) 102px;gap:5px;min-height:82px}
.mobile-sticky-advisor{width:44px;height:78px;object-position:44% 50%}
.mobile-sticky-name{font-size:13px;letter-spacing:-.035em}
.mobile-sticky-description{font-size:11px}
.mobile-sticky-cta{min-height:62px;padding:7px 3px}
.mobile-sticky-cta>strong{font-size:14px;gap:3px}
}
@keyframes sticky-shine{0%,54%{left:-60%}79%,100%{left:140%}}
@media(prefers-reduced-motion:reduce){
.mobile-sticky{transition:none}
.mobile-sticky-cta::after{animation:none;display:none}
}
@media print{
.mobile-sticky{display:none!important}
}
@media screen{
.mobile-sticky:is([data-design=clean],[data-design=cat-guide],[data-design=concierge],[data-design=offer-card]){padding:12px 10px max(10px,env(safe-area-inset-bottom))}
.mobile-sticky:is([data-design=clean],[data-design=cat-guide],[data-design=concierge],[data-design=offer-card]) .mobile-sticky-badge{box-shadow:none;font-size:10px;line-height:1.4;border:0}
.mobile-sticky:is([data-design=clean],[data-design=cat-guide],[data-design=concierge],[data-design=offer-card]) .mobile-sticky-badge span{font-size:12px;margin:0}
.mobile-sticky:is([data-design=clean],[data-design=cat-guide],[data-design=concierge],[data-design=offer-card]) .mobile-sticky-badge svg{width:14px;height:12px}
.mobile-sticky:is([data-design=clean],[data-design=cat-guide],[data-design=concierge],[data-design=offer-card]) .mobile-sticky-name{font-size:17px;line-height:1.5;letter-spacing:-.025em}
.mobile-sticky:is([data-design=clean],[data-design=cat-guide],[data-design=concierge],[data-design=offer-card]) .mobile-sticky-description{font-size:10px;line-height:1.55;white-space:nowrap}
.mobile-sticky:is([data-design=clean],[data-design=cat-guide],[data-design=concierge],[data-design=offer-card]) .mobile-sticky-cta{box-shadow:none;border:0;text-shadow:none}
.mobile-sticky:is([data-design=clean],[data-design=cat-guide],[data-design=concierge],[data-design=offer-card]) .mobile-sticky-close{top:-22px;right:-8px;width:44px;height:44px;padding:8px}
.mobile-sticky:is([data-design=clean],[data-design=cat-guide],[data-design=concierge],[data-design=offer-card]) .mobile-sticky-close span{width:27px;height:27px;background:#fff;color:#775a63;border-color:#e4d5da;box-shadow:0 2px 6px #66384514;font-size:20px}
.mobile-sticky-pr:not([hidden]){position:absolute;bottom:4px;right:12px;display:block;color:#927f83;font:10px/1.1 sans-serif;letter-spacing:.08em;pointer-events:none}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]){padding-top:9px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-shell{border:1px solid #f1ccd3;border-radius:23px 23px 17px 17px;background:#fff0ef;box-shadow:0 5px 25px #a83d5726;padding:8px 10px 13px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-link{grid-template-columns:77px minmax(0,1fr);grid-template-rows:53px 48px;gap:5px 8px;min-height:0;position:relative}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-advisor{grid-area:1/1/3/2;position:relative;z-index:1;width:87px;height:104px;align-self:end;object-fit:contain;object-position:center;mix-blend-mode:normal;filter:drop-shadow(0 3px 0 #dbaea933)}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-copy{grid-area:1/2;padding:16px 9px 5px;gap:0;background:#fff;border:1px solid #efc9cf;border-radius:13px;align-self:stretch;position:relative}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-copy::before{content:'';position:absolute;left:-5px;top:23px;width:8px;height:8px;border-left:1px solid #efc9cf;border-bottom:1px solid #efc9cf;background:#fff;transform:rotate(45deg)}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-description{display:none}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-badge{top:13px;left:105px;gap:3px;z-index:2;padding:0;background:transparent;color:#b36659;font-size:9px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-badge span{font-size:10px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-badge svg{width:12px;height:10px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-name{color:#95506a;line-height:1.8;font-size:17px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-cta{grid-area:2/2;flex-direction:column;gap:0;min-height:48px;border-radius:25px;padding:4px 7px;background:#d95677;box-shadow:0 3px 0 #bc4161}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-cta>span{font-size:11px;line-height:1.3;white-space:nowrap}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-cta>strong{font-size:14px;gap:5px;line-height:1.4}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-cta b{background:#ffffff2b;border-radius:50%;width:21px;height:21px;display:grid;place-items:center}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-link:hover .mobile-sticky-cta{background:#c74769}
}
@media(max-width:374px){
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-link{grid-template-columns:64px minmax(0,1fr);column-gap:6px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-advisor{width:73px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-badge{left:91px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-name{font-size:15px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-cta{gap:0;padding-left:5px;padding-right:5px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-cta>strong{font-size:13px;gap:3px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-cta>span{font-size:11px}
}
@media screen{
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]){padding:18px 10px max(8px,env(safe-area-inset-bottom))}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-shell{padding:14px 10px 10px;border-color:#dbbf8d}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-badge{left:50%;top:-14px;transform:translateX(-50%);z-index:3;min-height:27px;max-width:calc(100% - 58px);padding:4px 10px;border:1px solid #c9a45a;border-radius:4px;background:linear-gradient(110deg,#986d32,#8c6631);color:#fff8e9;box-shadow:0 2px 5px #85632b26;font-size:11px;line-height:1.5;gap:5px;letter-spacing:.015em}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-badge::before{content:'';position:absolute;left:-5px;bottom:-1px;border-left:4px solid transparent;border-bottom:4px solid #735321}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-badge::after{content:'';position:absolute;right:-5px;bottom:-1px;border-right:4px solid transparent;border-bottom:4px solid #735321}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-badge span{font-size:11px;color:#fff8e9;line-height:1.3;padding-left:5px;border-left:1px solid #e9cf9f80}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-badge svg{color:#ffe5a3;width:13px;height:11px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-link{grid-template-rows:36px 48px;row-gap:5px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-copy{padding:3px 8px;justify-content:center}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-copy::before{top:12px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-name{line-height:1.5}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-pr{bottom:2px;font-size:9px;right:12px}
.mobile-sticky[data-design=offer-card] .mobile-sticky-shell{background:linear-gradient(115deg,#fffaf0,#fff2f3)}
.mobile-sticky[data-design=offer-card] .mobile-sticky-link{grid-template-columns:99px minmax(0,1fr);column-gap:9px}
.mobile-sticky[data-design=offer-card] .mobile-sticky-advisor{width:99px;height:89px;object-fit:contain;object-position:center;border:1px solid #d9b778;border-radius:11px;background:#fff;padding:2px;filter:none;align-self:center}
.mobile-sticky[data-design=offer-card] .mobile-sticky-copy{background:transparent;border:0;border-radius:0;padding:0}
.mobile-sticky[data-design=offer-card] .mobile-sticky-copy::before{display:none}
.mobile-sticky[data-design=offer-card] .mobile-sticky-name{color:#805446;font-size:17px}
.mobile-sticky[data-design=offer-card] .mobile-sticky-close{right:-8px}
}
@media(max-width:374px){
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-badge{font-size:10px;padding:4px 8px;gap:4px}
.mobile-sticky:is([data-design=cat-guide],[data-design=offer-card]) .mobile-sticky-badge span{font-size:10px;padding-left:4px}
.mobile-sticky[data-design=offer-card] .mobile-sticky-link{grid-template-columns:87px minmax(0,1fr);column-gap:7px}
.mobile-sticky[data-design=offer-card] .mobile-sticky-advisor{width:87px;height:87px}
.mobile-sticky[data-design=offer-card] .mobile-sticky-name{font-size:15px}
.mobile-sticky[data-design=offer-card] .mobile-sticky-cta{padding-left:4px;padding-right:4px}
.mobile-sticky[data-design=offer-card] .mobile-sticky-cta>strong{font-size:12px;gap:3px}
}

/* Keep the adopted card compact and centered on wider screens. */
@media screen and (min-width:651px){
.mobile-sticky[data-design=offer-card]{max-width:540px}
.mobile-sticky[data-design=offer-card] .mobile-sticky-name{font-size:19px}
.mobile-sticky[data-design=offer-card] .mobile-sticky-cta>strong{font-size:16px}
}
