/* Clean final responsive overrides. Loaded after app.css. */
:root{--store-pink:#f12b78;--store-red:#ff493e;--store-bg:#0b0b0e;--store-panel:#15151a;--store-line:rgba(255,255,255,.09)}

/* Desktop header remains the existing desktop header. */
.site-header{position:sticky!important;top:0!important;z-index:1000!important}
.header-play{cursor:pointer!important;pointer-events:auto!important}

/* Store page: same visual language as the reference mobile screenshot. */
.donate-page{width:min(1180px,calc(100% - 40px))!important;margin:0 auto!important;padding:26px 0 90px!important;background:transparent!important}
.donate-hero{min-height:250px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.donate-hero-copy{min-height:250px!important;padding:22px 0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;text-align:center!important}
.donate-hero-kicker{display:none!important}
.donate-hero h1{margin:0!important;font-size:clamp(58px,8vw,96px)!important;line-height:.95!important;letter-spacing:-.06em!important;font-weight:900!important;color:#fff!important}
.donate-hero p{display:none!important}
.donate-showcase{display:block!important;width:min(680px,100%)!important;margin:0 auto!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:34px!important;background:linear-gradient(180deg,#17171d,#101116)!important;box-shadow:0 30px 90px rgba(0,0,0,.32)!important}
.donate-showcase-image{height:auto!important;min-height:0!important;max-height:none!important;background:#111!important}
.donate-showcase-image img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:1.52/1!important;object-fit:cover!important}
.donate-showcase-copy{padding:30px 34px 36px!important;background:linear-gradient(180deg,#17171d,#111116)!important}
.donate-showcase-copy .tag,.donate-benefits,.donate-rate-chip{display:none!important}
.donate-showcase-copy h2{margin:0 0 28px!important;font-size:clamp(34px,5vw,48px)!important;line-height:1!important;color:#fff!important;letter-spacing:-.04em!important}
.donate-showcase-actions{display:block!important}
.shop-donate-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:285px!important;max-width:100%!important;height:70px!important;border:0!important;border-radius:999px!important;background:linear-gradient(105deg,var(--store-pink),var(--store-red))!important;color:#fff!important;font:inherit!important;font-size:25px!important;font-weight:900!important;cursor:pointer!important;pointer-events:auto!important;position:relative!important;z-index:5!important;box-shadow:0 18px 45px rgba(241,43,120,.18)!important}
.shop-donate-button:hover{filter:brightness(1.06)!important;transform:translateY(-1px)!important}

/* Donation modal. */
.donate-modal{position:fixed!important;inset:0!important;z-index:10000!important;display:none!important;align-items:center!important;justify-content:center!important;padding:24px!important}
.donate-modal.open{display:flex!important}
.donate-modal-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.76)!important;backdrop-filter:blur(9px)!important;-webkit-backdrop-filter:blur(9px)!important;cursor:pointer!important}
.donate-modal-card{position:relative!important;z-index:2!important;width:min(760px,100%)!important;max-height:calc(100dvh - 48px)!important;overflow:auto!important;padding:70px 50px 48px!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:34px!important;background:#151618!important;box-shadow:0 40px 120px rgba(0,0,0,.7)!important}
.donate-modal-close{position:absolute!important;right:22px!important;top:12px!important;width:56px!important;height:56px!important;padding:0!important;border:0!important;background:transparent!important;color:#aaa!important;font-size:56px!important;line-height:56px!important;cursor:pointer!important;z-index:3!important}
.donate-modal-card h2{margin:0 0 40px!important;color:#fff!important;font-size:clamp(38px,5vw,64px)!important;line-height:1!important;letter-spacing:-.055em!important}
.donate-modal-form{display:grid!important;gap:28px!important}
.donate-modal-form label{display:grid!important;gap:12px!important;color:#8d8d94!important;font-size:21px!important}
.donate-modal-form input{width:100%!important;height:74px!important;padding:0 28px!important;border:1px solid rgba(255,255,255,.075)!important;border-radius:17px!important;background:#1b1c1e!important;color:#fff!important;font:inherit!important;font-size:25px!important;outline:none!important}
.donate-modal-form input:focus{border-color:rgba(241,43,120,.5)!important;box-shadow:0 0 0 4px rgba(241,43,120,.08)!important}
.donate-amount-field{position:relative!important}
.donate-amount-field>input{padding-right:210px!important}
.donate-x{position:absolute!important;right:160px!important;top:50%!important;transform:translateY(-50%)!important;color:#ff3a72!important;font-size:23px!important;font-weight:900!important;pointer-events:none!important}
.donate-amount-field strong{position:absolute!important;right:8px!important;top:50%!important;transform:translateY(-50%)!important;height:52px!important;padding:0 14px!important;display:flex!important;align-items:center!important;border-radius:9px!important;background:#222326!important;color:#fff!important;font-size:18px!important;font-style:italic!important;white-space:nowrap!important;pointer-events:none!important}
.donate-buy-button{width:100%!important;height:70px!important;border:0!important;border-radius:999px!important;background:linear-gradient(105deg,var(--store-pink),var(--store-red))!important;color:#fff!important;font:inherit!important;font-size:23px!important;font-weight:900!important;cursor:pointer!important}
body.donate-modal-open{overflow:hidden!important}

/* Mobile header: exact full-screen menu composition from the reference. */
@media(max-width:700px){
  .site-header{position:sticky!important;top:8px!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
  .header-inner{width:calc(100% - 20px)!important;height:64px!important;margin:0 auto!important;padding:0 8px 0 12px!important;display:grid!important;grid-template-columns:40px minmax(0,1fr) 46px!important;gap:8px!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:20px!important;background:rgba(63,63,67,.90)!important;box-shadow:0 16px 45px rgba(0,0,0,.32)!important;backdrop-filter:blur(18px)!important}
  .header-inner .brand img{width:34px!important;height:34px!important}
  .header-inner .brand span,.desktop-header-nav{display:none!important}
  .header-inner .header-play{display:flex!important;width:100%!important;min-width:0!important;height:46px!important;padding:0 10px!important;border-radius:14px!important;font-size:15px!important;gap:8px!important}
  .header-inner>.burger{display:flex!important;width:46px!important;height:46px!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:5px!important;padding:8px!important;border:0!important;background:transparent!important;cursor:pointer!important}
  .header-inner>.burger i{display:block!important;width:27px!important;height:3px!important;background:#fff!important;border-radius:3px!important}

  .donate-page{width:calc(100% - 20px)!important;padding:18px 0 60px!important}
  .donate-hero{min-height:260px!important}
  .donate-hero-copy{min-height:260px!important;padding:10px 0!important;justify-content:center!important}
  .donate-hero h1{font-size:52px!important}
  .donate-showcase{width:100%!important;border-radius:27px!important}
  .donate-showcase-image img{aspect-ratio:1.42/1!important}
  .donate-showcase-copy{padding:26px 22px 30px!important}
  .donate-showcase-copy h2{font-size:37px!important;margin-bottom:28px!important}
  .shop-donate-button{width:285px!important;height:62px!important;font-size:22px!important}

  /* Full-screen menu like the reference, not a small dropdown. */
  .mobile-nav{position:fixed!important;inset:0!important;z-index:9999!important;width:100%!important;max-width:none!important;height:100dvh!important;max-height:none!important;margin:0!important;padding:0 34px!important;overflow:hidden!important;border:0!important;border-radius:0!important;background:linear-gradient(180deg,#101012 0%,#11111a 55%,#161329 100%)!important;box-shadow:none!important;display:none!important}
  .mobile-nav.open{display:block!important}
  .mobile-nav-head{height:100px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;border-bottom:0!important}
  .mobile-nav-head .brand img{width:48px!important;height:48px!important}
  .menu-close{width:58px!important;height:58px!important;padding:0!important;border:0!important;background:transparent!important;color:#fff!important;font-size:58px!important;font-weight:200!important;line-height:1!important;cursor:pointer!important}
  .mobile-links{position:absolute!important;left:0!important;right:0!important;top:50%!important;transform:translateY(-50%)!important;display:grid!important;gap:34px!important;padding:0 34px!important}
  .mobile-links a{justify-content:center!important;padding:0!important;background:transparent!important;color:#fff!important;font-size:42px!important;font-weight:400!important;line-height:1.1!important;border-radius:0!important;text-align:center!important}
  .mobile-links a .icon-arrow{display:none!important}
  .mobile-nav-footer{position:absolute!important;right:34px!important;bottom:76px!important;padding:0!important;margin:0!important;border:0!important}
  .mobile-nav-footer .mobile-play{width:285px!important;height:74px!important;border-radius:17px!important;font-size:24px!important}

  .donate-modal{padding:0 10px!important;align-items:flex-start!important;padding-top:80px!important}
  .donate-modal-card{width:100%!important;max-height:calc(100dvh - 100px)!important;padding:62px 28px 30px!important;border-radius:30px!important}
  .donate-modal-card h2{font-size:41px!important;white-space:nowrap!important;margin-bottom:38px!important}
  .donate-modal-form label{font-size:18px!important}
  .donate-modal-form input{height:68px!important;padding:0 20px!important;font-size:21px!important}
  .donate-amount-field>input{padding-right:175px!important}
  .donate-x{right:135px!important;font-size:21px!important}
  .donate-amount-field strong{right:7px!important;height:50px!important;padding:0 9px!important;font-size:17px!important}
  .donate-buy-button{height:70px!important;font-size:22px!important}
}
@media(max-width:390px){
  .mobile-links{gap:28px!important}
  .mobile-links a{font-size:36px!important}
  .mobile-nav-footer{right:20px!important;bottom:65px!important}
  .mobile-nav-footer .mobile-play{width:250px!important}
  .donate-hero h1{font-size:48px!important}
  .donate-showcase-copy h2{font-size:33px!important}
  .donate-modal-card h2{font-size:36px!important}
}

/* V7 interaction/layout hardening */
body.donate-modal-open{overflow:hidden!important}
.shop-donate-button{position:relative!important;z-index:30!important;pointer-events:auto!important;touch-action:manipulation!important;cursor:pointer!important}
.donate-modal{pointer-events:none!important}
.donate-modal.open{pointer-events:auto!important}
.donate-modal-backdrop,.donate-modal-card{pointer-events:auto!important}

/* Mobile menu: full-screen like the supplied reference */
@media(max-width:700px){
  .site-header{z-index:3000!important}
  .mobile-nav{
    position:fixed!important;inset:0!important;top:0!important;left:0!important;right:0!important;
    width:100%!important;max-width:none!important;height:100dvh!important;max-height:none!important;
    margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
    overflow:hidden!important;background:linear-gradient(180deg,#17171a 0%,#0e0e11 42%,#171329 100%)!important;
    box-shadow:none!important;display:flex!important;flex-direction:column!important;
    transform:translateY(-8px)!important;opacity:0!important;visibility:hidden!important;
    pointer-events:none!important;transition:opacity .2s ease,transform .2s ease,visibility .2s ease!important;
  }
  .mobile-nav.open{opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important}
  .mobile-nav-head{
    flex:0 0 86px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
    padding:0 28px!important;border:0!important;border-radius:0!important;background:rgba(75,75,78,.92)!important;
  }
  .mobile-nav-head .brand img{width:52px!important;height:52px!important}
  .menu-close{width:58px!important;height:58px!important;background:transparent!important;border:0!important;font-size:56px!important;color:#fff!important}
  .mobile-links{flex:1!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:18px!important;padding:20px 20px 80px!important}
  .mobile-links a{width:auto!important;padding:4px 10px!important;background:transparent!important;border:0!important;font-size:36px!important;line-height:1.2!important;font-weight:500!important;letter-spacing:-.02em!important;color:#fff!important;text-align:center!important}
  .mobile-links a span{display:none!important}
  .mobile-links a:hover{background:transparent!important}
  .mobile-nav-footer{flex:0 0 auto!important;padding:0 28px 42px!important;margin:0!important;border:0!important}
  .mobile-nav-footer .mobile-play{width:100%!important;height:62px!important;border-radius:18px!important;font-size:20px!important}
  body.menu-open .site-header{visibility:hidden!important}
}
@media(max-width:430px){
  .mobile-nav-head{flex-basis:82px!important;padding:0 24px!important}
  .mobile-nav-head .brand img{width:48px!important;height:48px!important}
  .mobile-links{gap:20px!important;padding-bottom:70px!important}
  .mobile-links a{font-size:34px!important}
  .mobile-nav-footer{padding:0 24px 34px!important}
  .mobile-nav-footer .mobile-play{height:60px!important;font-size:19px!important}
}

/* Shop page: same visual language as the rest of the site */
@media(max-width:700px){
  .donate-page{width:calc(100% - 24px)!important;padding:28px 0 70px!important}
  .donate-hero{min-height:250px!important;border-radius:24px!important}
  .donate-hero-copy{min-height:250px!important;padding:28px 24px!important;justify-content:flex-end!important}
  .donate-hero h1{font-size:52px!important;margin:12px 0 8px!important}
  .donate-hero p{font-size:16px!important}
  .donate-showcase{margin:-22px 10px 0!important;display:block!important;border-radius:24px!important}
  .donate-showcase-image{height:250px!important;min-height:250px!important}
  .donate-showcase-copy{padding:24px!important}
  .donate-showcase-copy h2{font-size:32px!important}
  .donate-benefits{grid-template-columns:repeat(3,1fr)!important;gap:7px!important;margin:18px 0!important}
  .donate-benefits div{padding:11px 5px!important}
  .donate-benefits b{font-size:21px!important}
  .donate-benefits span{font-size:9px!important}
  .donate-showcase-actions{display:block!important}
  .shop-donate-button{width:100%!important;height:58px!important;font-size:18px!important}
  .donate-rate-chip{width:100%!important;justify-content:space-between!important;margin-top:10px!important}
}

/* V8 FINAL: unified store background, reliable controls and launcher navigation */
.donate-page{width:min(1180px,calc(100% - 40px))!important;margin:0 auto!important;padding:28px 0 90px!important;background:transparent!important}
.donate-hero{min-height:190px!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important}
.donate-hero-overlay{display:none!important}
.donate-hero-copy{min-height:190px!important;background:transparent!important;padding:20px 0!important;justify-content:center!important;align-items:flex-start!important;text-align:left!important}
.donate-hero-kicker{display:none!important}
.donate-hero h1{font-size:clamp(42px,6vw,70px)!important;margin:0!important;color:#fff!important;text-transform:none!important}
.donate-hero p{display:none!important}
.donate-showcase{width:100%!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important}
.donate-showcase-image{height:360px!important;min-height:360px!important;border-radius:28px!important;overflow:hidden!important;background:transparent!important}
.donate-showcase-image img{width:100%!important;height:100%!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:center!important;border-radius:28px!important;display:block!important}
.donate-showcase-copy{margin-top:18px!important;padding:28px 30px 30px!important;background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:24px!important;box-shadow:none!important}
.donate-showcase-copy .tag{display:block!important;margin-bottom:12px!important}
.donate-showcase-copy h2{margin:0 0 20px!important;font-size:36px!important}
.donate-benefits{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:10px!important;margin:0 0 22px!important}
.donate-benefits div{background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.07)!important;border-radius:16px!important;padding:15px!important}
.donate-showcase-actions{display:flex!important;align-items:center!important;gap:14px!important}
.shop-donate-button{width:285px!important;height:62px!important;flex:none!important;pointer-events:auto!important;touch-action:manipulation!important;cursor:pointer!important;position:relative!important;z-index:100!important}
.donate-rate-chip{display:flex!important;align-items:center!important;gap:8px!important;padding:13px 17px!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:14px!important;background:rgba(255,255,255,.035)!important;color:#aaa!important}
.donate-modal{z-index:100000!important}
.donate-modal.open{display:flex!important;visibility:visible!important;opacity:1!important}

@media(max-width:700px){
  .donate-page{width:calc(100% - 24px)!important;padding:22px 0 60px!important}
  .donate-hero{min-height:120px!important}
  .donate-hero-copy{min-height:120px!important;padding:10px 4px!important;align-items:flex-start!important;justify-content:center!important}
  .donate-hero h1{font-size:38px!important}
  .donate-showcase-image{height:220px!important;min-height:220px!important;border-radius:20px!important}
  .donate-showcase-image img{border-radius:20px!important}
  .donate-showcase-copy{padding:20px!important;margin-top:12px!important;border-radius:20px!important}
  .donate-showcase-copy h2{font-size:29px!important}
  .donate-benefits{grid-template-columns:1fr 1fr 1fr!important;gap:6px!important}
  .donate-benefits div{padding:10px 5px!important;text-align:center!important}
  .donate-benefits span{font-size:9px!important}
  .donate-showcase-actions{display:block!important}
  .shop-donate-button{width:100%!important;height:58px!important}
  .donate-rate-chip{width:100%!important;margin-top:10px!important;justify-content:space-between!important}
  .mobile-nav{z-index:999999!important}
}

/* V9: hard fallback for the purchase control/modal. */
#openDonateModal{display:inline-flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;touch-action:manipulation!important;cursor:pointer!important;}
#donateModal.open{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
#donateModal.open .donate-modal-card{visibility:visible!important;opacity:1!important;}


/* V10: clean D-Coins shop + reliable form validation */
.donate-page{
  background:transparent!important;
}
.donate-hero{
  background:transparent!important;
}
.donate-hero-overlay{
  display:none!important;
}
.donate-showcase{
  background:rgba(20,20,24,.78)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.25)!important;
}
.donate-showcase-copy{
  background:transparent!important;
}
.donate-modal-card{
  background:rgba(19,20,23,.98)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:0 30px 100px rgba(0,0,0,.60),0 0 50px rgba(255,47,131,.08)!important;
}
.donate-modal-form .field-wrap{
  display:block!important;
}
.donate-modal-form .field-error{
  display:block!important;
  min-height:18px!important;
  margin-top:7px!important;
  padding-left:4px!important;
  color:#ff6b6b!important;
  font-size:14px!important;
  line-height:1.25!important;
}
.donate-modal-form input.field-invalid{
  border-color:#ff4d5e!important;
  box-shadow:0 0 0 1px rgba(255,77,94,.35)!important;
}
.donate-modal-form input:focus{
  outline:none!important;
}
.donate-buy-button:disabled{
  opacity:.65!important;
  cursor:wait!important;
  transform:none!important;
}
@media(max-width:700px){
  .donate-page{padding-top:12px!important}
  .donate-hero{min-height:150px!important}
  .donate-hero-copy{min-height:150px!important;padding:12px 0 20px!important}
  .donate-hero-kicker{display:none!important}
  .donate-hero h1{font-size:42px!important;letter-spacing:-1px!important}
  .donate-hero p{font-size:16px!important;line-height:1.45!important}
  .donate-showcase{
    border-radius:24px!important;
    overflow:hidden!important;
    background:rgba(20,20,24,.82)!important;
  }
  .donate-showcase-image img{display:block!important;width:100%!important;aspect-ratio:1.35/1!important;object-fit:cover!important}
  .donate-showcase-copy{padding:22px 20px 24px!important}
  .donate-showcase-copy .tag{margin-bottom:10px!important}
  .donate-showcase-copy h2{font-size:32px!important;margin:0 0 20px!important}
  .donate-benefits{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important}
  .donate-benefits>div{min-height:72px!important;padding:10px 6px!important;border-radius:14px!important;background:rgba(255,255,255,.035)!important}
  .donate-benefits b{font-size:18px!important}
  .donate-benefits span{font-size:12px!important;line-height:1.2!important}
  .donate-showcase-actions{display:block!important;margin-top:18px!important}
  .shop-donate-button{width:100%!important;height:58px!important;border-radius:17px!important;font-size:20px!important}
  .donate-rate-chip{margin-top:10px!important;width:100%!important;justify-content:center!important}
  .donate-modal{padding:14px!important;align-items:center!important}
  .donate-modal-card{
    width:100%!important;
    max-height:calc(100dvh - 28px)!important;
    overflow:auto!important;
    padding:50px 20px 22px!important;
    border-radius:26px!important;
  }
  .donate-modal-card h2{
    font-size:34px!important;
    line-height:1.05!important;
    white-space:normal!important;
    padding-right:18px!important;
    margin-bottom:26px!important;
  }
  .donate-modal-form label{font-size:16px!important}
  .donate-modal-form input{height:60px!important;font-size:18px!important}
  .donate-amount-field>input{padding-right:150px!important}
  .donate-x{right:120px!important;font-size:18px!important}
  .donate-amount-field strong{right:5px!important;height:44px!important;padding:0 8px!important;font-size:15px!important}
  .donate-buy-button{height:62px!important;margin-top:8px!important;font-size:21px!important}
}

/* V11: final mobile menu + compact donation modal + exact nickname rules */
@media(max-width:700px){
  .header-inner>.burger{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    z-index:1000001!important;
  }
  .mobile-nav{
    z-index:1000000!important;
  }
  .donate-modal-card h2{
    font-size:clamp(30px,8.4vw,42px)!important;
    line-height:1.05!important;
    letter-spacing:-.035em!important;
    white-space:normal!important;
    padding-right:38px!important;
    margin-bottom:30px!important;
  }
  .donate-modal-form input.field-invalid{
    border:1px solid #ff4d5e!important;
    box-shadow:none!important;
  }
  .donate-modal-form .field-error{
    color:#ff5968!important;
    font-size:13px!important;
    min-height:16px!important;
  }
}
.donate-modal-form input.field-invalid{
  border:1px solid #ff4d5e!important;
  box-shadow:none!important;
}


/* V12: compact donation title + reference-style nickname validation */
.donate-modal-card h2{
  font-size:34px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  white-space:nowrap!important;
}
.donate-modal-form .field-error{
  text-align:right!important;
  padding-right:6px!important;
  font-size:14px!important;
  line-height:1.2!important;
  min-height:18px!important;
  margin-top:5px!important;
  color:#ff4d5e!important;
}
.donate-modal-form input.field-invalid{
  border:1px solid #ff4d5e!important;
  box-shadow:0 0 0 1px rgba(255,77,94,.08)!important;
}
@media(max-width:700px){
  .donate-modal-card h2{
    font-size:30px!important;
    line-height:1.08!important;
    letter-spacing:-.03em!important;
    white-space:nowrap!important;
    padding-right:34px!important;
    margin-bottom:24px!important;
  }
  .donate-modal-form .field-error{
    font-size:13px!important;
    text-align:right!important;
    padding-right:4px!important;
    min-height:16px!important;
  }
}


/* Legal + footer final style */
.legal-topbar{display:flex!important;justify-content:center!important}
.legal-only-back{width:min(460px,100%)!important;justify-content:center!important}
.legal-card{margin-top:28px!important}
.footer{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important}
.footer-contact-card,.footer-legal-links a{
 display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
 min-height:70px!important;padding:18px 28px!important;border:1px solid rgba(255,255,255,.12)!important;
 border-radius:22px!important;background:rgba(20,20,28,.72)!important;backdrop-filter:blur(14px)!important;
 color:#fff!important;text-decoration:none!important;transition:.25s ease!important;
}
.footer-contact-card{margin:0 auto 14px!important;min-width:min(420px,100%)}
.footer-card-title{font-weight:800;font-size:15px;color:#aaa;margin-bottom:8px}
.footer-mail{color:#fff;text-decoration:none;font-weight:700}
.footer-legal-links{display:flex!important;gap:14px!important;justify-content:center!important;width:100%!important}
.footer-legal-links a:hover,.footer-contact-card:hover{transform:translateY(-3px);border-color:var(--pink)}
@media(max-width:700px){
 .footer-legal-links{flex-direction:column!important;align-items:center!important}
 .footer-legal-links a,.footer-contact-card{width:100%!important;min-width:0!important}
 .legal-topbar{padding:0 20px!important}
}

/* Legal navigation: compact top-left back button */
.legal-topbar{
  display:flex!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  width:100%!important;
  padding:0!important;
}
.legal-only-back{
  width:auto!important;
  max-width:none!important;
  justify-content:flex-start!important;
  padding:10px 15px!important;
  min-height:42px!important;
  border-radius:14px!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1!important;
  gap:7px!important;
  background:rgba(255,255,255,.045)!important;
  border-color:rgba(255,255,255,.10)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.16)!important;
}
.legal-only-back:hover{transform:translateY(-1px)!important}
.legal-switcher{
  width:min(790px,100%)!important;
  margin:22px auto 0!important;
}
.legal-card{margin-top:34px!important}
@media(max-width:700px){
  .legal-topbar{padding:0!important}
  .legal-only-back{
    padding:9px 13px!important;
    min-height:40px!important;
    border-radius:13px!important;
    font-size:12px!important;
  }
  .legal-switcher{margin-top:18px!important}
  .legal-card{margin-top:26px!important}
}

/* Footer — only requested final adjustments */
.footer-copy{
  border-top:0!important;
  text-align:center!important;
}
.footer-contact-card{
  width:min(440px,100%)!important;
  min-width:0!important;
  min-height:60px!important;
  padding:12px 18px!important;
  border-radius:17px!important;
}
.footer-card-title{font-size:14px!important;margin-bottom:5px!important;}
.footer-mail{font-size:14px!important;gap:7px!important;}
.footer-legal-links{width:min(620px,100%)!important;gap:8px!important;}
.footer-legal-links a{
  min-height:46px!important;
  padding:9px 13px!important;
  border-radius:14px!important;
  font-size:12px!important;
  gap:7px!important;
}
@media(max-width:700px){
  .footer-contact-card{padding:11px 14px!important;min-height:54px!important;border-radius:15px!important;}
  .footer-card-title{font-size:13px!important;margin-bottom:4px!important;}
  .footer-mail{font-size:13px!important;}
  .footer-legal-links{gap:7px!important;}
  .footer-legal-links a{min-height:43px!important;padding:8px 11px!important;font-size:11px!important;border-radius:13px!important;}
  .footer-copy{text-align:center!important;}
}
