.price-notice{box-sizing:border-box;width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:0;border-radius:12px;padding:38px 28px 28px;margin:auto;background:#fff;color:#222;font-family:Arial,Helvetica,sans-serif;box-shadow:0 16px 70px #0003}
.price-notice::backdrop{background:#0008}
.price-notice form{margin:0}
.price-notice-close{position:absolute;top:8px;right:8px;width:32px;height:32px;border:0;background:transparent;color:#555;font-size:26px;cursor:pointer}
.price-notice h2{font-size:23px;line-height:1.25;margin:0 0 16px;font-weight:600;overflow-wrap:anywhere}
.price-notice p{font-size:16px;line-height:1.55;margin:0 0 24px;white-space:pre-wrap;overflow-wrap:anywhere}
.price-notice-link{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border-radius:7px;background:#222;color:white;text-decoration:none;text-align:center;font-size:15px;font-weight:600;overflow-wrap:anywhere}
@media(max-width:600px){.price-notice{padding:36px 20px 22px}.price-notice h2{font-size:20px}.price-notice p{font-size:14px}.price-notice-link{font-size:14px}}
/* Keep the default notice heading on one line on narrow phones. */
@media(max-width:600px){
 .price-notice{width:calc(100% - 24px);max-width:440px;padding:38px 12px 20px}
 .price-notice h2{font-size:clamp(15px,4.45vw,20px);line-height:1.25;letter-spacing:-.3px;margin-bottom:14px}
 .price-notice p{font-size:14px;line-height:1.5;margin-bottom:18px}
}
/* A narrower, taller notice with comfortable side margins. */
.price-notice{width:min(380px,calc(100% - 48px));padding:44px 22px 30px}
.price-notice h2{font-size:20px}
.price-notice p{margin-bottom:28px;line-height:1.6}
@media(max-width:600px){
 .price-notice{width:calc(100% - 48px);max-width:340px;padding:44px 14px 28px}
 .price-notice h2{font-size:clamp(13px,3.85vw,18px);line-height:1.3;letter-spacing:-.35px;margin-bottom:20px}
 .price-notice p{font-size:14px;line-height:1.65;margin-bottom:26px}
}
/* Center the notice copy and reduce its width by another fifth. */
.price-notice{width:min(304px,calc((100% - 48px)*.8));text-align:center}
.price-notice h2{font-weight:700}
.price-notice p{font-weight:600;text-align:center}
@media(max-width:600px){
 .price-notice{width:calc((100% - 48px)*.8);max-width:272px}
 .price-notice h2{font-size:clamp(11px,3.1vw,14px);letter-spacing:-.4px}
}
/* Clear hierarchy: a large warning title, readable centered copy, Telegram action last. */
.price-notice h2{font-size:28px;line-height:1.12;margin-bottom:22px;font-weight:800;letter-spacing:-.6px}
.price-notice p{font-size:15px;line-height:1.6;font-weight:500;margin-bottom:28px}
@media(max-width:600px){
 .price-notice h2{font-size:clamp(20px,6.5vw,24px);line-height:1.15;letter-spacing:-.6px;white-space:nowrap}
 .price-notice p{font-size:14px;line-height:1.6;font-weight:500}
}
/* Use the same narrow vertical composition on desktop and mobile. */
.price-notice{width:min(272px,calc(100% - 24px));padding:44px 14px 28px}
.price-notice h2{font-size:24px;line-height:1.15;letter-spacing:-.75px;white-space:nowrap;margin-bottom:20px}
.price-notice p{font-size:14px;line-height:1.65;font-weight:500;margin-bottom:26px}
@media(max-width:600px){
 .price-notice h2{font-size:clamp(17px,5.6vw,21px)}
}
/* Identical compact typography and line rhythm on phone and desktop. */
.price-notice h2{font-size:18px;line-height:1.15;letter-spacing:-.35px;margin-bottom:18px}
.price-notice p{font-size:13px;line-height:1.38;font-weight:500;margin-bottom:24px}
.price-notice-gif{display:block;width:112px;height:112px;object-fit:cover;margin:0 auto 14px;border-radius:10px}
@media(max-width:600px){
 .price-notice h2{font-size:18px}
 .price-notice p{font-size:13px;line-height:1.38}
 .price-notice-gif{width:112px;height:112px}
}
