*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--orange:#FF8C42;--bg:#FFF9F0;--text:#2D2D2D;--muted:#888;}
body{background:var(--bg);font-family:'Nunito Sans',sans-serif;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;}
.shapes{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0;}
.shape{position:absolute;border-radius:50%;opacity:.12;animation:float linear infinite;}
.shape:nth-child(1){width:140px;height:140px;background:#FFD93D;top:4%;left:6%;animation-duration:15s;}
.shape:nth-child(2){width:90px;height:90px;background:#FF8C42;top:12%;right:8%;animation-duration:11s;animation-delay:-3s;}
.shape:nth-child(3){width:170px;height:170px;background:#FFC1A0;bottom:8%;left:4%;animation-duration:18s;animation-delay:-6s;}
.shape:nth-child(4){width:65px;height:65px;background:#FFD93D;bottom:18%;right:7%;animation-duration:9s;animation-delay:-1s;}
@keyframes float{0%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-28px) rotate(180deg)}100%{transform:translateY(0) rotate(360deg)}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.card{background:#fff;border-radius:32px;padding:40px 32px 32px;text-align:center;max-width:460px;width:100%;position:relative;z-index:1;box-shadow:0 8px 0 #F0DDD0,0 16px 48px rgba(0,0,0,.09);animation:popIn .6s cubic-bezier(.34,1.56,.64,1) both;}
@keyframes popIn{from{transform:scale(.9) translateY(16px)}to{transform:scale(1) translateY(0)}}
.card::before{content:'';position:absolute;top:-4px;left:20px;right:20px;height:8px;background:linear-gradient(90deg,#FFD93D,#FF8C42,#FFD93D);border-radius:8px 8px 0 0;}

.sun{font-size:72px;line-height:1;margin-bottom:8px;display:inline-block;animation:bounce 2.2s ease-in-out infinite;}
@keyframes bounce{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-10px) rotate(3deg)}}
h1{font-family:'Nunito',sans-serif;font-size:1.6rem;font-weight:900;margin-bottom:8px;background:linear-gradient(135deg,#FFB800,#FFD93D,#FFC400);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 1px 0 rgba(255,180,0,.15);}
.subtitle{color:#666;font-size:1.09rem;font-weight:700;margin-bottom:24px;line-height:1.6;}

.buttons{display:flex;flex-direction:column;gap:20px;}
.btn{display:flex;align-items:center;justify-content:center;gap:12px;padding:15px 18px;border-radius:18px;text-decoration:none;font-family:'Nunito',sans-serif;font-weight:900;font-size:1.31rem;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s ease;cursor:pointer;color:#fff;}
.btn{text-shadow:0 1px 3px rgba(0,0,0,.55),0 2px 8px rgba(0,0,0,.25);}
.btn-tablet,.btn-teach{text-shadow:none;}
.soon-badge{text-shadow:0 1px 2px rgba(0,0,0,.4);}
.btn:hover{transform:translateY(-4px) scale(1.02);}
.btn:active{transform:translateY(-1px) scale(.99);}
.btn:focus-visible{outline:3px solid #2D2D2D;outline-offset:3px;}
.btn-icon{width:26px;height:26px;flex-shrink:0;border-radius:50%;}
.btn-emoji{font-size:1.5rem;line-height:1;flex-shrink:0;}

.btn-club{border:1px solid #fff;background:linear-gradient(135deg,#1E9E42 0%,#2FCE5A 60%,#4CE071 100%);box-shadow:0 5px 0 #146B2C,0 10px 24px rgba(30,158,66,.4);color:#fff;padding:20px 16px;}
.btn-club:hover{box-shadow:0 7px 0 #146B2C,0 14px 32px rgba(30,158,66,.5);}
.btn-club .club-text{display:flex;flex-direction:column;gap:3px;text-align:center;}
.btn-club .club-title{font-size:1.31rem;line-height:1.2;color:#fff;margin-bottom:0;}
.club-wrap{display:flex;flex-direction:column;gap:14px;border:2px solid #BFE8C8;background:#F4FCF6;border-radius:24px;padding:16px 14px 16px;}
.club-info{padding:0 4px;text-align:left;color:#2D2D2D;font-family:'Nunito Sans',sans-serif;font-weight:700;font-size:1.04rem;line-height:1.5;}
.club-info .ci-title{display:block;text-align:center;font-family:'Nunito',sans-serif;font-weight:900;font-size:1.1rem;color:#146B2C;margin-bottom:6px;}
.club-info .ci-line{display:flex;align-items:flex-start;gap:10px;padding:3px 0;}
.club-info .ci-bonus{display:flex;align-items:center;gap:12px;margin-top:12px;padding:10px 14px;border-radius:14px;background:#E6F0FF;color:#1E5FBF;text-align:left;}
.club-info .cb-icon{flex-shrink:0;width:2.4em;height:2.4em;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;font-size:1.15rem;box-shadow:0 1px 3px rgba(30,95,191,.25);}
.club-info .cb-text{display:flex;flex-direction:column;gap:1px;}
.club-info .cb-main{font-family:'Nunito',sans-serif;font-weight:900;font-size:1.2rem;line-height:1.2;}
.club-info .cb-sub{font-family:'Nunito Sans',sans-serif;font-weight:700;font-size:.95rem;line-height:1.3;color:#3F6FB8;}
.club-info .ci-n{flex-shrink:0;width:1.55em;height:1.55em;line-height:1.55em;border-radius:50%;background:#2FCE5A;color:#fff;text-align:center;font-family:'Nunito',sans-serif;font-weight:900;font-size:.9em;margin-top:.05em;}
.btn-club .club-desc{font-family:'Nunito Sans',sans-serif;font-weight:700;font-size:1.04rem;line-height:1.5;color:#fff;display:flex;flex-direction:column;gap:6px;}
.btn-club .club-line{display:block;}
.btn-tg{background:linear-gradient(135deg,#229ED9 0%,#2AABEE 60%,#54C4F5 100%);box-shadow:0 5px 0 #1A7BA8,0 10px 24px rgba(34,158,217,.3);}
.btn-tg:hover{box-shadow:0 7px 0 #1A7BA8,0 14px 32px rgba(34,158,217,.4);}
.btn-max{background:linear-gradient(135deg,#5B4FD9 0%,#7B6FEE 60%,#9B91F5 100%);box-shadow:0 5px 0 #3D339E,0 10px 24px rgba(91,79,217,.3);}
.btn-max:hover{box-shadow:0 7px 0 #3D339E,0 14px 32px rgba(91,79,217,.4);}
.btn-rt{background:linear-gradient(135deg,#1E9E42 0%,#2FCE5A 60%,#4CE071 100%);box-shadow:0 5px 0 #146B2C,0 10px 24px rgba(30,158,66,.4);}
.btn-rt:hover{box-shadow:0 7px 0 #146B2C,0 14px 32px rgba(30,158,66,.5);}
.btn-yt{background:linear-gradient(135deg,#D93025 0%,#F0402F 60%,#FF6A54 100%);box-shadow:0 5px 0 #A81E14,0 10px 24px rgba(217,48,37,.3);}
.btn-yt:hover{box-shadow:0 7px 0 #A81E14,0 14px 32px rgba(217,48,37,.4);}
.btn-games{background:linear-gradient(135deg,#FFB800 0%,#FFC93D 55%,#FFDD66 100%);box-shadow:0 5px 0 #D99400,0 10px 24px rgba(255,184,0,.35);color:#000;text-shadow:none;}
.btn-games:hover{box-shadow:0 7px 0 #D99400,0 14px 32px rgba(255,184,0,.45);}
.btn-edu{background:linear-gradient(135deg,#E0509B 0%,#F06AB0 60%,#FA92C8 100%);box-shadow:0 5px 0 #B23577,0 10px 24px rgba(224,80,155,.3);}
.btn-edu:hover{box-shadow:0 7px 0 #B23577,0 14px 32px rgba(224,80,155,.4);}

.btn-ad{background:linear-gradient(135deg,#1E5FBF 0%,#2E7BE0 55%,#4E9CF5 100%);box-shadow:0 5px 0 #123D7A,0 10px 24px rgba(30,95,191,.4);color:#fff;padding:22px 18px;}
.btn-ad:hover{box-shadow:0 7px 0 #123D7A,0 14px 32px rgba(30,95,191,.5);}
.btn-ad .ad-text{display:flex;flex-direction:column;gap:4px;text-align:center;}
.btn-ad .ad-title{font-size:1.42rem;line-height:1.2;color:#fff;}
.btn-ad .ad-desc{font-family:'Nunito Sans',sans-serif;font-weight:700;font-size:1.08rem;line-height:1.4;color:#EAF2FF;}

.btn-teach{background:linear-gradient(135deg,#C9CDD3 0%,#DDE1E6 45%,#EDEFF2 100%);box-shadow:0 5px 0 #A3A9B0,0 10px 24px rgba(0,0,0,.14);padding:22px 18px;color:#1F1F1F;position:relative;overflow:hidden;}
.btn-teach .soon-badge{position:absolute;top:10px;right:-32px;background:#E0509B;color:#fff;font-family:'Nunito Sans',sans-serif;font-weight:800;font-size:0.91rem;padding:4px 36px;transform:rotate(35deg);box-shadow:0 2px 6px rgba(0,0,0,.2);letter-spacing:.02em;}
.btn-teach .soon-badge.badge-red{background:#D9302E;}
.btn-teach:hover{box-shadow:0 7px 0 #B0B0B0,0 14px 32px rgba(0,0,0,.18);}
.btn-teach .teach-text{display:flex;flex-direction:column;gap:3px;text-align:center;}
.btn-teach .teach-desc{font-family:'Nunito Sans',sans-serif;font-weight:700;font-size:1.04rem;line-height:1.4;color:#4A4A4A;}

/* Instagram — фирменный градиент */
.btn-ig{background:linear-gradient(135deg,#FEDA75 0%,#FA7E1E 25%,#D62976 50%,#962FBF 75%,#4F5BD5 100%);box-shadow:0 5px 0 #8A2387,0 10px 24px rgba(214,41,118,.35);}
.btn-ig:hover{box-shadow:0 7px 0 #8A2387,0 14px 32px rgba(214,41,118,.45);}
.btn-ig .teach-text{display:flex;flex-direction:column;gap:3px;text-align:center;}
.btn-ig .teach-desc{font-size:1.01rem;font-weight:400;color:#FFF3E0;display:flex;flex-direction:column;gap:6px;}
.btn-ig .ig-line{display:block;}

/* Подвал: контакты и соглашение */
.footer{position:relative;z-index:1;max-width:460px;width:100%;text-align:center;margin-top:18px;}
.contacts-toggle{background:transparent;border:none;font-family:'Nunito Sans',sans-serif;font-size:0.90rem;font-weight:700;color:#B9A688;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:6px 10px;}
.contacts-toggle:hover{color:var(--orange);}
.contacts-panel{max-height:0;overflow:hidden;transition:max-height .4s ease;}
.contacts-panel.open{max-height:1800px;}
.contacts{padding:14px 20px 4px;font-size:0.86rem;color:#9A8A70;line-height:1.8;}
.contacts h3{font-size:0.79rem;font-weight:700;color:#B9A688;margin-bottom:4px;text-transform:uppercase;letter-spacing:.06em;}
.contacts a{color:#8A7A60;}
.contacts a:hover{color:var(--orange);}
.contacts+.contacts{margin-top:8px;}
.price-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:10px;text-align:left;}
.price-list li{line-height:1.5;}
.price-list .pl-title{color:#8A7A60;font-weight:700;}
.price-list .pl-price{white-space:nowrap;color:#8A7A60;font-weight:700;}
.price-note{margin-top:10px;text-align:center;font-weight:700;color:#B0793E;}
.promo-note{margin-top:4px;padding-top:20px;border-top:2px dashed #F0DDD0;color:#666;font-size:1.01rem;line-height:1.6;text-align:center;}
.promo-note strong{color:#2D2D2D;}
.promo-note p+p{margin-top:6px;}
.legal{padding:12px 0 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;}
.legal a{font-size:0.79rem;color:#C9BBA2;text-decoration:underline;}
.legal a:hover{color:var(--orange);}
.legal .contacts-toggle{appearance:none;-webkit-appearance:none;background:none;border:none;margin:0;font-family:'Nunito Sans',sans-serif;font-size:0.79rem;font-weight:400;line-height:normal;padding:0;color:#C9BBA2;text-decoration:underline;text-underline-offset:3px;cursor:pointer;}
.legal .contacts-toggle:hover{color:var(--orange);}

.btn-tablet{background:linear-gradient(135deg,#FFB800 0%,#FFC93D 55%,#FFDD66 100%);box-shadow:0 5px 0 #D99400,0 10px 24px rgba(255,184,0,.35);color:#000;padding:22px 18px;position:relative;overflow:hidden;}
.btn-tablet:hover{box-shadow:0 7px 0 #D99400,0 14px 32px rgba(255,184,0,.45);}
.btn-tablet .soon-badge{position:absolute;top:10px;right:-32px;background:#E0509B;color:#fff;font-family:'Nunito Sans',sans-serif;font-weight:800;font-size:0.91rem;padding:4px 36px;transform:rotate(35deg);box-shadow:0 2px 6px rgba(0,0,0,.2);letter-spacing:.02em;}
.btn-tablet .tablet-text{display:flex;flex-direction:column;gap:4px;text-align:center;}
.btn-tablet .tablet-title{font-size:1.42rem;line-height:1.2;color:#000;}
.btn-tablet .tablet-desc{font-family:'Nunito Sans',sans-serif;font-weight:700;font-size:1.08rem;line-height:1.4;color:#000;}

/* Разделитель для проектов в разработке */
.coming-soon-divider{margin:14px 0 2px;padding-top:24px;border-top:2px dashed #E8DFD0;text-align:center;}
.coming-soon-divider .cs-title{display:inline-block;font-family:'Nunito',sans-serif;font-weight:900;font-size:1.15rem;color:#B0793E;margin-bottom:6px;}
.coming-soon-divider .cs-text{font-family:'Nunito Sans',sans-serif;font-weight:600;font-size:1.01rem;color:#9A8A70;line-height:1.45;margin:0;}
.btn-games .teach-text{display:flex;flex-direction:column;gap:3px;text-align:center;}
.btn-games .teach-desc{font-family:'Nunito Sans',sans-serif;font-weight:700;font-size:1.04rem;line-height:1.4;color:#000;}

/* Телефоны: меньше боковых отступов, больше места для текста */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;}
@media (max-width:480px){
  body{padding:12px 8px;}
  .card{padding:28px 14px 22px;border-radius:26px;}
  .sun{font-size:60px;}
  h1{font-size:1.45rem;}
  .subtitle{font-size:1rem;line-height:1.5;margin-bottom:18px;}
  .buttons{gap:16px;}
  .club-wrap{padding:12px 8px;border-radius:20px;}
  .btn{padding:14px 12px;font-size:1.15rem;}
  .btn-club{padding:16px 10px;}
  .btn-club .club-title{font-size:1.15rem;}
  .club-info{padding:0 2px;font-size:.98rem;line-height:1.45;}
  .club-info .ci-line{gap:8px;}
  .club-info .cb-main{font-size:1.1rem;}
  .club-info .cb-sub{font-size:.9rem;}
  .promo-note{font-size:.95rem;}
}