#academy-offer { box-sizing:border-box; width:min(880px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); padding:0; margin:auto; border:1px solid #514531; border-radius:0!important; background:#17181b; color:#f5f1e9; box-shadow:0 28px 100px #0009; font:14px/1.5 'Segoe UI',system-ui,sans-serif; }
#academy-offer::backdrop { background:#050609b8; backdrop-filter:blur(8px); }
#academy-offer [hidden] { display:none!important; }
#academy-offer * { box-sizing:border-box; }
#academy-offer .ao-shell { position:relative; padding:36px; }
#academy-offer .ao-close { position:absolute; right:14px; top:12px; display:grid; place-items:center; width:36px; height:36px; border:0; background:transparent; color:#aaa; font-size:26px; cursor:pointer; }
#academy-offer .ao-close:hover { color:white; }
#academy-offer .ao-brand { display:flex; align-items:center; gap:10px; color:#d7b979; font-size:11px; letter-spacing:.16em; text-transform:uppercase; }
#academy-offer .ao-brand img { width:30px; height:30px; object-fit:contain; }
#academy-offer h2 { margin:22px 0 10px; color:#faf8f3; font-size:clamp(27px,4vw,38px); line-height:1.15; font-weight:700; letter-spacing:-.035em; }
#academy-offer .ao-intro { max-width:500px; color:#b8b8c0; margin:0 0 26px; font-size:15px; }
#academy-offer .ao-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:start; }
#academy-offer .ao-benefits { list-style:none; padding:8px 0; margin:0; display:grid; gap:18px; }
#academy-offer .ao-benefits li { display:flex; align-items:start; gap:10px; color:#dedee2; }
#academy-offer .ao-benefits li::before { content:'✓'; color:#d6b66c; font-weight:bold; }
#academy-offer .ao-price-card { padding:24px; border:1px solid #655333; border-radius:0!important; background:linear-gradient(150deg,#30291c80,#202124); }
#academy-offer .ao-badge { display:inline-block; color:#e7c987; background:#c8a65e18; padding:4px 9px; border:1px solid #8a714148; border-radius:0!important; font-size:11px; font-weight:600; }
#academy-offer .ao-price { display:block; margin:12px 0 0; font-size:48px; font-weight:700; letter-spacing:-.04em; line-height:1.2; }
#academy-offer .ao-price small { font-size:19px; font-weight:400; letter-spacing:0; }
#academy-offer .ao-renewal { margin:4px 0 20px; color:#d2cbbc; font-size:13px; }
#academy-offer .ao-primary { display:block; width:100%; padding:13px 16px; min-height:46px; border:1px solid #e5c57e; border-radius:0!important; background:#e3c17b; color:#1b180f; font-family:inherit; font-size:14px; font-weight:600; line-height:1.4; cursor:pointer; }
#academy-offer .ao-primary:hover:not(:disabled) { background:#f0d493; }
#academy-offer .ao-primary:disabled { opacity:.5; cursor:wait; }
#academy-offer .ao-secondary { display:block; margin:14px auto 0; border:0; background:transparent; color:#b1b1ba; text-decoration:underline; text-underline-offset:4px; cursor:pointer; padding:6px; }
#academy-offer .ao-fine { margin:16px 0 0; font-size:11px; line-height:1.6; color:#aaa6a0; }
#academy-offer a { color:#e4c788; text-underline-offset:3px; }
#academy-offer .ao-card-fields { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:20px 0; }
#academy-offer .ao-field { display:grid; gap:6px; color:#bcbcc4; font-size:12px; min-width:0; }
#academy-offer .ao-full { grid-column:1/-1; }
#academy-offer .ao-input { min-width:0; width:100%; height:44px; padding:10px 12px; border:1px solid #43434b; background:#232429; color:#f1f1f5; border-radius:0!important; font:inherit; }
#academy-offer .ao-secure-field { padding:0 12px; }
#academy-offer .ao-consent { display:flex; gap:10px; align-items:start; color:#cfced5; font-size:12px; padding:14px; margin:0 0 18px; border:1px solid #42424a; border-radius:0!important; }
#academy-offer .ao-consent input { margin-top:3px; flex:0 0 auto; width:17px; height:17px; accent-color:#e3c17b; }
#academy-offer .ao-status { margin:16px 0 0; font-size:13px; color:#e6bd95; }
#academy-offer .ao-success { text-align:center; padding:24px 0 10px; }
#academy-offer .ao-success strong { display:block; font-size:24px; margin:12px 0; }
#academy-offer :focus-visible { outline:2px solid #e6c47b; outline-offset:4px; }
@media(max-width:640px) { #academy-offer .ao-shell { padding:28px 20px; } #academy-offer .ao-grid { grid-template-columns:1fr; gap:12px; } #academy-offer .ao-benefits { gap:10px; padding:0 0 12px; } #academy-offer .ao-price-card { padding:20px; } #academy-offer h2 { padding-right:10px; } }
