/* Spartan Basketball Academy — page-specific styles (teams, forms, shop, player plan).
   Uses the color variables defined in styles.css. */

/* decorative watermark inside inner-page heroes */
.page-hero .container{position:relative;z-index:1}
.watermark{position:absolute;right:4%;bottom:-.16em;font-family:'Oswald','Impact',sans-serif;font-weight:700;font-size:clamp(5rem,16vw,12rem);letter-spacing:.06em;line-height:1;color:rgba(255,255,255,.06);pointer-events:none;user-select:none;z-index:0}

/* photos */
.media .photo,img.photo{width:100%;border-radius:var(--radius);box-shadow:0 18px 40px rgba(11,31,75,.25)}
.photo-wide{margin-bottom:44px}

/* extra button style */
.btn-line{background:transparent;color:var(--navy);border-color:var(--navy)}
.btn-line:hover{background:var(--navy);color:var(--white)}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.actions .btn{margin-top:0}

/* dark call-out box */
.callout{background:var(--navy);color:#DCE3F5;border-radius:var(--radius);padding:24px 26px;margin-top:26px;border-left:6px solid var(--gold)}
.callout h3{color:var(--white);font-size:1.2rem;margin-bottom:8px}
.callout p{font-size:.96rem}

/* honeypot field (hidden from people) */
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* directions link inside dark cards */
.dir{display:inline-block;margin-top:14px;font-size:.85rem;font-weight:700;border:2px solid var(--gold);padding:9px 16px;border-radius:999px;transition:.2s}
.dir:hover{background:var(--gold);color:var(--navy)!important}

/* team filters and cards */
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.filters button{font:inherit;font-weight:700;font-size:.88rem;padding:11px 20px;border-radius:999px;border:2px solid var(--navy);background:var(--white);color:var(--navy);cursor:pointer;transition:.2s}
.filters button:hover{background:var(--navy-mid);border-color:var(--navy-mid);color:var(--white)}
.filters button[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:var(--navy)}
.team-count{font-size:.86rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:22px}
.team{background:var(--white);border-radius:var(--radius);padding:26px 24px;border-top:5px solid var(--gold);box-shadow:0 10px 28px rgba(11,31,75,.09);display:flex;flex-direction:column;gap:6px;transition:transform .25s,box-shadow .25s}
.team:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(11,31,75,.15)}
.team[hidden]{display:none}
.team .cls{font-weight:700;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-dark)}
.team h3{font-size:1.35rem}
.team p{color:var(--muted);font-size:.95rem;flex:1}
.team a{margin-top:10px;font-weight:700;font-size:.9rem;color:var(--navy);border-bottom:2px solid var(--gold);align-self:flex-start;padding-bottom:2px}
.team a:hover{color:var(--gold-dark)}

/* shop */
.product{background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 28px rgba(11,31,75,.09);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.product:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(11,31,75,.15)}
.product .pic{position:relative;display:block;background:var(--light);aspect-ratio:1/1}
.product .pic img{width:100%;height:100%;object-fit:cover}
.product .tag-new{position:absolute;left:14px;top:14px;background:var(--gold);color:var(--navy);font-weight:800;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;padding:7px 12px;border-radius:999px}
.product .body{padding:24px 24px 28px;display:flex;flex-direction:column;gap:8px;flex:1}
.product h3{font-size:1.3rem}
.product .meta{color:var(--muted);font-size:.93rem}
.product .price{font-size:.88rem;font-weight:600;color:var(--navy)}
.product .btn{margin-top:auto;align-self:flex-start}
.shop-note{text-align:center;color:var(--muted);font-size:.9rem;margin-top:22px}

/* player plan */
.narrow{max-width:820px;margin:0 auto}
.plan-out{margin-top:26px;background:var(--light);border-radius:var(--radius);padding:26px;border-left:6px solid var(--gold)}
.plan-out[hidden]{display:none}
.plan-out h3{font-size:1.4rem;margin-bottom:8px}
.plan-out p{color:var(--muted);margin-bottom:12px}
.plan-out ol{list-style:none;display:grid;gap:10px;margin:14px 0 18px}
.plan-out li{background:var(--white);border:1px solid #E2E7F3;border-radius:12px;padding:14px 16px;color:var(--text)}
.plan-out li b{color:var(--navy)}
.plan-err{color:#B3261E;font-weight:600;font-size:.9rem;margin-top:12px}
.howto{margin-top:44px}
.howto h2{font-size:1.7rem;margin-bottom:10px}
.howto p{color:var(--muted)}
