*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:#f5f5f3;color:#111a29;font-family:Arial,Helvetica,sans-serif}.page{width:100%;max-width:1120px;margin:0 auto;padding:48px 32px 72px}.top-row{display:flex;align-items:center;gap:28px}.main-heading{margin:0;color:#111a29;font-size:clamp(42px,5.3vw,64px);line-height:.94;font-weight:900;letter-spacing:-3px;white-space:nowrap}.alex-name{position:relative;display:inline-block;color:#0039a6;font-size:1.09em;letter-spacing:-3.4px;padding-bottom:7px}.alex-name:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;border-radius:999px;background:linear-gradient(90deg,#ce1126 0 34%,#fcd116 34% 67%,#0039a6 67% 100%)}.top-image-wrap{margin-left:auto;display:flex;align-items:center;justify-content:center}.top-image{width:108px;height:108px;display:block;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(0,0,0,.12))}.answer{flex:0 0 auto;min-width:225px;height:108px;padding:0 42px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#ffffff;border:2px solid #fcd116;font-size:65px;line-height:1;font-weight:900;letter-spacing:-3px}.answer.pending{color:#7084a1}.answer.yes{color:#0039a6}.answer.no{color:#ce1126}.result-section,.upcoming-section{margin-top:34px}.section-heading-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.section-heading{margin:0;color:#111a29;font-size:clamp(29px,4vw,43px);line-height:1;font-weight:900;letter-spacing:-1.4px}.section-note{color:#7084a1;font-size:11px;font-weight:900;letter-spacing:1px}.result-card{background:#ffffff;color:#090d13;border:2px solid #fcd116;border-radius:28px;padding:28px 30px 24px}.match-main{display:flex;align-items:flex-start;justify-content:space-between}.section-label{color:#7084a1;font-size:12px;font-weight:900;letter-spacing:2px}.result-card .section-label{color:#7084a1}.match-title{margin-top:10px;color:#111a29;font-size:clamp(28px,4vw,43px);line-height:1;font-weight:900;letter-spacing:-1.7px}.match-date{margin-top:16px;color:#7084a1;font-size:13px}.players-row{margin-top:28px;padding-top:25px;border-top:1px solid #dfe4ea;display:grid;grid-template-columns:1fr auto 1fr;grid-gap:24px;gap:24px;align-items:center}.player-side{min-width:0}.player-side-right{text-align:right}.player-label{color:#7084a1;font-size:10px;font-weight:900;letter-spacing:1.2px}.player-name{margin-top:0;color:#090d13;font-size:25px;line-height:1.08;font-weight:900}.vs{color:#0039a6;font-size:13px;font-weight:900;letter-spacing:1px}.match-details{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-top:18px}.match-details>div{min-height:72px;padding:12px 14px;border-radius:14px;background:#f3f6f8}.match-details span{display:block;color:#7084a1;font-size:9px;font-weight:900;letter-spacing:1px}.match-details strong{display:block;margin-top:8px;color:#111a29;font-size:18px;font-weight:900}.upcoming-card{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,1fr);grid-gap:30px;gap:30px;align-items:center;background:#111a29;color:#ffffff;border:1px solid #ce1126;padding:32px}.upcoming-card .section-label{color:#c2cfdf}.upcoming-title{margin-top:10px;color:#ffffff;font-size:clamp(28px,4vw,40px);line-height:1;font-weight:900;letter-spacing:-1.6px}.upcoming-date{margin-top:12px;color:#aab8cb;font-size:14px;line-height:1.5}.upcoming-meta{display:grid;grid-gap:8px;gap:8px}.upcoming-meta>div{min-height:92px;padding:14px;border-radius:14px;background:rgba(255,255,255,.055)}.upcoming-meta span{display:block;color:#aab8cb;font-size:9px;font-weight:900;letter-spacing:1px}.upcoming-meta strong{display:block;margin-top:8px;color:#ffffff;font-size:16px;font-weight:900}.section-card{margin-top:30px;padding:34px;background:#ffffff;color:#090d13;border:1px solid #dddcd6;border-radius:28px}.grand-slam-card,.section-card--red{border:2px solid #fcd116}.career-card{margin-top:30px;padding:34px;background:#111a29;border:1px solid #ce1126;border-radius:28px}.career-card,.career-card .section-title{color:#ffffff}.career-card .stats-list{border-top-color:rgba(255,255,255,.18)}.career-card .stats-list>div{border-bottom-color:rgba(255,255,255,.1)}.career-card .stats-list span{color:#aab8cb}.career-card .stats-list strong{color:#ffffff}.career-card .stats-column .doubles-heading,.career-card .stats-column h3{color:#fcd116!important}.career-heading-row{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:24px}.career-heading-row .section-title,.grand-slam-heading .section-title{margin:0}.stats-updated{flex:0 0 auto;color:#7f8da1;font-size:11px;font-weight:700;letter-spacing:.2px;white-space:nowrap}.section-card .section-label{color:#7084a1}.section-title{margin:10px 0 24px;font-size:clamp(30px,4vw,43px);line-height:1;font-weight:900;letter-spacing:-1.6px}.bio-layout{display:block}.about-title{margin-bottom:18px}.bio-image-wrap{float:right;width:210px;height:210px;margin:0 0 18px 28px;border-radius:18px;overflow:hidden;background:#f1f4f7}.bio-image{width:100%;height:100%;display:block;object-fit:cover;object-position:center center}.bio-copy{color:#263241;font-size:16px;line-height:1.65}.bio-copy p{margin:0 0 14px}.bio-copy p:last-child{margin-bottom:0}.grand-slam-grid,.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:24px;gap:24px}.grand-slam-grid h3,.stats-column h3{margin:0 0 14px;color:#0039a6;font-size:20px;line-height:1;font-weight:900;letter-spacing:.2px}.slam-list,.stats-list{border-top:1px solid #dfe4ea}.slam-list>div,.stats-list>div{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #edf0f3}.slam-list span,.stats-list span{color:#7084a1;font-size:13px}.slam-list strong,.stats-list strong{color:#090d13;font-size:14px;font-weight:900}footer{padding-top:28px;text-align:center;color:#8995a7;font-size:12px;line-height:1.6}@media (max-width:820px){.page{padding:30px 18px 55px}.top-row{display:grid;grid-template-columns:80px minmax(0,1fr);grid-gap:10px 14px;gap:10px 14px}.main-heading{grid-column:1/-1;font-size:42px}.top-image-wrap{margin-left:0}.top-image{width:80px;height:80px}.answer{min-width:0;width:100%;height:80px;font-size:48px;padding:0 20px}.match-main,.upcoming-card{display:block}.result-score{margin-top:22px}.players-row{grid-template-columns:1fr}.player-side-right,.players-row{text-align:left}.match-details{grid-template-columns:repeat(3,1fr)}.upcoming-meta{grid-template-columns:repeat(2,1fr);margin-top:24px}.bio-layout,.grand-slam-grid,.stats-grid{grid-template-columns:1fr}.result-card,.section-card,.upcoming-card{padding:27px 22px;border-radius:25px}}@media (max-width:500px){.main-heading{font-size:37px}.top-image{width:74px;height:74px}.answer{height:74px;font-size:44px}.section-heading-row{align-items:flex-end}.section-heading{font-size:29px}.match-details{grid-template-columns:1fr}.upcoming-meta{grid-template-columns:1fr 1fr}}.doubles-heading{color:#ce1126!important}.upcoming-heading{margin:0 0 16px;color:#111a29;font-size:clamp(36px,4.8vw,52px);line-height:.94;font-weight:900;letter-spacing:-2px}.upcoming-main{min-width:0}.upcoming-copy{max-width:680px;margin:18px 0 0;color:#aab8cb;font-size:14px;line-height:1.6}.upcoming-meta{grid-template-columns:repeat(3,1fr)}@media (max-width:500px){.upcoming-heading{font-size:34px}}.grand-slam-grid{padding-top:6px}.grand-slam-grid h3{margin-top:0;padding-top:2px}.grand-slam-grid>div:first-child h3{color:#fcd116}.grand-slam-card{margin-top:30px}@media (max-width:820px){.career-heading-row{align-items:flex-start;flex-direction:column;gap:7px}.stats-updated{white-space:normal}.career-card,.grand-slam-card{padding:27px 22px;border-radius:25px}}.grand-slam-card .grand-slam-grid .doubles-heading,.grand-slam-card .grand-slam-grid h3{color:#0039a6!important}.grand-slam-card .grand-slam-grid .doubles-heading{color:#ce1126!important}.scoreboard{margin-top:20px;border-top:1px solid #dfe4ea;border-bottom:1px solid #dfe4ea}.score-row,.scoreboard-head{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,72px);align-items:center;grid-column-gap:14px;column-gap:14px}.scoreboard-head{padding:9px 0 7px}.scoreboard-head>span{color:#7084a1;font-size:9px;font-weight:900;letter-spacing:1.2px;text-transform:uppercase}.scoreboard-head>span:not(:first-child){text-align:center}.score-row{min-height:52px;border-top:1px solid #edf0f3}.score-row-winner{background:#f8fafb}.score-player{display:flex;align-items:center;gap:10px;min-width:0}.score-player strong{color:#111a29;font-size:18px;font-weight:900}.score-row-winner .score-player strong{color:#0039a6}.set-score{text-align:center;font-size:21px}.set-score,.winner-tag{color:#111a29;font-weight:900}.winner-tag{flex:0 0 auto;padding:4px 7px;border-radius:999px;background:#fcd116;font-size:8px;letter-spacing:.8px}.match-details span,.section-label,.section-note,.upcoming-meta span{text-transform:uppercase}@media (max-width:820px){.score-row,.scoreboard-head{grid-template-columns:minmax(145px,1fr) repeat(3,52px);column-gap:8px}.score-player strong{font-size:16px}.winner-tag{font-size:7px;padding:3px 5px}}@media (max-width:500px){.alex-name{font-size:1.06em;letter-spacing:-2.8px;padding-bottom:5px}.alex-name:after{height:3px}.score-row,.scoreboard-head{grid-template-columns:minmax(118px,1fr) repeat(3,40px);column-gap:5px}.score-player strong{font-size:14px}.set-score{font-size:18px}}.match-context{min-width:0}.match-summary{display:flex;align-items:center;gap:10px;margin-top:16px}.match-outcome{display:inline-flex;align-items:center;min-height:24px;padding:4px 9px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:1px}.match-outcome.win{background:#fcd116;color:#111a29}.match-outcome.loss{background:#ce1126;color:#fff}.match-played-date{color:#7084a1;font-size:12px;font-weight:700}.tennis-mark{position:relative;flex:0 0 44px;width:44px;height:44px;border:2px solid #fcd116;border-radius:50%;opacity:.9}.tennis-mark:after,.tennis-mark:before{content:"";position:absolute;width:24px;height:54px;top:-7px;border:2px solid transparent;border-left-color:#0039a6;border-radius:50%;transform:rotate(27deg)}.tennis-mark:before{left:5px}.tennis-mark:after{right:5px;transform:rotate(-27deg);border-left-color:#ce1126}.recent-form{margin-top:18px;padding:18px 20px 20px;border-radius:18px;background:#f3f6f8}.recent-form-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:12px}.recent-form-heading>div{display:flex;flex-direction:column;gap:5px}.recent-form-heading strong{color:#111a29;font-size:15px;font-weight:900}.recent-form-key{color:#7084a1;font-size:10px}.form-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));grid-gap:8px;gap:8px}.form-match{min-width:0;min-height:82px;padding:11px;display:flex;gap:10px;border-radius:13px;background:#fff;border:1px solid #dfe4ea}.form-result{display:inline-flex;flex:0 0 26px;width:26px;height:26px;align-items:center;justify-content:center;border-radius:50%;font-size:10px;font-weight:900}.form-match-win .form-result{background:#fcd116;color:#111a29}.form-match-loss .form-result{background:#ce1126;color:#fff}.form-match-info strong{display:block;overflow:hidden;color:#111a29;font-size:12px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.form-match-info span{margin-top:6px}.stat-current{background:rgba(252,209,22,.07)}.stat-current strong{color:#fcd116!important}.stats-subtitle{margin:8px 0 0;color:#aab8cb;font-size:12px;line-height:1.45}.section-card .stats-subtitle{color:#7084a1}@media(max-width:820px){.tennis-mark{display:none}.recent-form{padding:16px;overflow:hidden}.recent-form-heading{align-items:flex-start;flex-direction:column;gap:6px}.form-grid{grid-template-columns:repeat(5,minmax(145px,1fr));overflow-x:auto;padding-bottom:3px}.career-heading-row{align-items:flex-start;flex-direction:column;gap:7px}.stats-updated{white-space:normal}.upcoming-meta{grid-template-columns:repeat(3,1fr);margin-top:24px}}@media(max-width:500px){.match-summary{flex-wrap:wrap}.form-grid{grid-template-columns:repeat(5,minmax(145px,1fr));overflow-x:auto}.upcoming-meta{grid-template-columns:1fr 1fr}.match-played-date{font-size:11px}}.form-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.form-match{min-height:100px;align-items:flex-start}.form-match-info{display:block;min-width:0}.form-match-info strong.form-first-name,.form-match-info strong.form-surname{display:block;overflow:hidden;color:#111a29;font-size:12px;font-weight:900;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.form-match-info strong.form-surname{margin-top:2px}.form-match-info span{display:block;margin-top:8px;color:#7084a1;font-size:9px;line-height:1.35}.form-match-info .form-tournament{margin-top:8px}.form-match-info .form-date{margin-top:2px;white-space:nowrap}.upcoming-event{margin-top:10px}.upcoming-substatus{margin-top:9px;color:#aab8cb;font-size:12px;font-weight:700}@media (max-width:820px){.form-grid{grid-template-columns:repeat(5,minmax(145px,1fr))}}.upcoming-heading-row{align-items:center}.upcoming-heading-row .section-heading{flex:1 1 auto;min-width:0}.upcoming-meta-outside{flex:0 0 min(52%,570px);min-width:430px;margin-top:0}.upcoming-meta-outside>div{min-height:68px;padding:11px 14px;background:#f3f6f8;border:1px solid #dfe4ea;border-radius:14px}.upcoming-meta-outside span{color:#7084a1}.upcoming-meta-outside strong{color:#111a29;margin-top:7px;font-size:15px}.upcoming-card{padding:25px 32px}.upcoming-card .upcoming-title{margin-top:9px}@media (max-width:900px){.upcoming-heading-row{align-items:flex-start;flex-direction:column}.upcoming-meta-outside{width:100%;min-width:0;flex-basis:auto}.upcoming-card{padding:24px 26px}}@media (max-width:500px){.upcoming-meta-outside{grid-template-columns:1fr 1fr}.upcoming-meta-outside>div:last-child{grid-column:1/-1}}.form-score{display:block;margin-top:7px;color:#7084a1;font-size:10px;line-height:1.25;font-weight:800;letter-spacing:.2px}.match-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,1.05fr);grid-gap:30px;gap:30px;align-items:start}.match-details-top{margin-top:0}.match-details-top>div{min-height:72px}.match-details-top strong{font-size:16px}@media (max-width:900px){.match-main{grid-template-columns:1fr}}.upcoming-time-box strong+strong{display:block;margin-top:2px}.share-section{margin-top:22px}.share-widget{padding:18px 20px 20px;background:#fcd116;border:2px solid #0039a6;border-radius:18px}.share-widget-header{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:13px}.share-widget-title{margin:0;color:#111a29;font-size:18px;font-weight:900;letter-spacing:1.5px}.share-widget-copy{margin:0;color:#7084a1;font-size:11px;line-height:1.4}.share-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.share-button{min-height:42px;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #dfe4ea;border-radius:11px;background:#f3f6f8;color:#111a29;font-family:inherit;font-size:11px;font-weight:900;letter-spacing:1px;text-decoration:none;cursor:pointer;transition:transform .12s ease,border-color .12s ease,background-color .12s ease}.share-button:hover{transform:translateY(-1px);border-color:#111a29;background:#ffffff}.share-button:focus-visible{outline:3px solid rgba(0,57,166,.2);outline-offset:2px}.share-button-facebook{border-color:rgba(0,57,166,.25)}.share-button-x{border-color:rgba(17,26,41,.24)}@media (max-width:500px){.share-widget-header{align-items:flex-start;flex-direction:column;gap:5px}.share-buttons{grid-template-columns:1fr}}.upcoming-odds{margin-top:10px;gap:7px;color:#aab8cb}.upcoming-odds>span{font-size:9px;letter-spacing:1px}.upcoming-odds strong{font-size:13px}.upcoming-odds b{font-size:12px}.upcoming-meta>div{min-height:82px;padding:12px 14px}@media (max-width:900px){.upcoming-odds{margin-top:9px}}.upcoming-main{width:100%}.upcoming-title{margin-top:0}.upcoming-event{margin-top:8px;color:#aab8cb;font-size:14px;line-height:1.4}.upcoming-meta{margin-top:18px}.upcoming-meta>div{min-height:76px;padding:11px 13px}.upcoming-meta span{font-size:8px}.upcoming-meta strong{margin-top:7px;font-size:14px}.upcoming-time-box strong+strong{margin-top:1px}.upcoming-odds{margin-top:16px;display:flex;align-items:baseline;flex-wrap:wrap;gap:9px}.upcoming-odds>span{color:#fcd116;font-size:10px;font-weight:900;letter-spacing:1.1px}.upcoming-odds strong{color:#ffffff;font-weight:900}.upcoming-odds b{color:#7084a1;font-size:15px}@media (max-width:900px){.upcoming-meta{margin-top:16px}}.upcoming-card{padding-top:22px}.upcoming-odds>span{letter-spacing:0}.upcoming-odds strong{font-size:17px}.upcoming-odds{display:block}.upcoming-odds>span{display:block;font-size:17px;line-height:1.1}.upcoming-odds-values{margin-top:4px;display:flex;align-items:baseline;flex-wrap:wrap;gap:9px}.upcoming-odds-values strong{font-size:17px}.upcoming-odds-values b{font-size:15px}.upcoming-odds+.upcoming-odds{margin-top:11px}.upcoming-bet-line{margin-top:13px;color:#aab8cb;font-size:11px;font-weight:700;text-align:center}.upcoming-bet-line a{color:#fcd116;font-weight:900;text-decoration:underline;text-underline-offset:2px}@media (max-width:600px){.upcoming-odds-values{flex-direction:column;align-items:flex-start;gap:2px}.upcoming-odds-values b{display:none}.upcoming-bet-line{text-align:left}}.upcoming-card{display:block;background:#ffffff;color:#090d13;border:2px solid #fcd116;border-radius:28px;padding:28px 30px 24px}.upcoming-card .upcoming-title{margin-top:0;color:#111a29}.upcoming-card .upcoming-event{color:#7084a1}.upcoming-card .upcoming-meta{margin-top:18px}.upcoming-card .upcoming-meta>div{background:#f3f6f8;border:0}.upcoming-card .upcoming-meta span{color:#7084a1}.upcoming-card .upcoming-meta strong{color:#111a29}.next-match-odds-section{margin-top:30px}.next-match-odds-card{background:#111a29;color:#ffffff;border:1px solid #ce1126;border-radius:28px;padding:28px 30px 24px}.next-match-odds-card .upcoming-odds{margin-top:0}.next-match-odds-card .upcoming-odds+.upcoming-odds{margin-top:15px}.next-match-odds-card .upcoming-bet-line{margin-top:16px}@media (max-width:900px){.next-match-odds-section{margin-top:26px}.next-match-odds-card{padding:24px 26px}}@media (max-width:500px){.upcoming-card{padding:24px 26px}.next-match-odds-card{padding:24px 22px}}.next-match-odds-card .upcoming-odds-values{display:grid;grid-gap:8px;gap:8px;margin-top:8px}.next-match-odds-card .odds-row{min-height:48px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:16px;gap:16px;padding:7px 7px 7px 16px;background:#182438;border:1px solid #293850;border-radius:11px}.next-match-odds-card .odds-player{min-width:0;color:#f4f7fb;font-size:16px;font-weight:900;line-height:1.25}.next-match-odds-card .odds-spread{color:#aab8cb;font-weight:800}.next-match-odds-card .odds-price{min-width:72px;padding:7px 12px;border-radius:8px;background:#26364f;border:1px solid #3b4d69;color:#ffffff;text-align:center;font-size:17px;font-weight:900;line-height:1}.share-widget{background:#111a29;border:1px solid #ce1126;color:#ffffff}.share-widget-title{color:#fcd116}.share-widget-copy{color:#aab8cb}.share-button{background:#182438;border-color:#293850;color:#f4f7fb}.share-button:hover{border-color:#3b4d69;background:#26364f;color:#ffffff}.share-button-facebook,.share-button-x{border-color:#293850}.share-button:focus-visible{outline-color:rgba(252,209,22,.35)}@media (max-width:600px){.next-match-odds-card .upcoming-odds-values{gap:7px}.next-match-odds-card .odds-row{min-height:46px;gap:10px;padding-left:13px}.next-match-odds-card .odds-player{font-size:15px}.next-match-odds-card .odds-price{min-width:66px;padding:7px 10px;font-size:16px}}.next-match-odds-card .odds-section-link{display:inline-block;color:#fcd116;text-decoration:none;cursor:pointer}.next-match-odds-card .odds-section-link:focus-visible,.next-match-odds-card .odds-section-link:hover{color:#fcd116;text-decoration:none}.next-match-odds-card .odds-row{color:inherit;text-decoration:none;box-sizing:border-box;cursor:pointer}.next-match-odds-card .odds-row:focus-visible,.next-match-odds-card .odds-row:hover{text-decoration:none;border-color:#3b4d69;background:#1d2b42}.next-match-odds-card .odds-row:focus-visible,.next-match-odds-card .odds-section-link:focus-visible{outline:2px solid #fcd116;outline-offset:2px}.share-widget .share-button{background:#f3f6f8;border:1px solid #dfe4ea;color:#111a29;font-size:13px;font-weight:900}.share-widget .share-button:hover{background:#ffffff;border-color:#fcd116;color:#111a29}.share-widget .share-button:focus-visible{outline:2px solid #fcd116;outline-offset:2px}.upcoming-card .upcoming-meta{grid-template-columns:repeat(4,minmax(0,1fr))}.upcoming-card .upcoming-time-box strong{white-space:nowrap}@media (max-width:900px){.upcoming-card .upcoming-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}