/* CSMT • black / ivory / bronze • Football and swimming registration */
:root{--bronze:#ad8643;--bronze-l:#e3c58d;--bronze-d:#795b2b;--pierre:#f0efeb;--pierre-2:#f8f7f4;--line:#e5e1d8;--ink:#171918;--ink-2:#706f68;--shadow:0 12px 40px -25px #1a1d1940;--r-lg:22px;--r-md:12px}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{font-family:Tajawal,Arial,sans-serif;font-size:17px;line-height:1.8;background:#f0efeb;background-image:radial-gradient(ellipse at 0 20%,#d8c69e22,transparent 45%);color:var(--ink)}
button,input,select,textarea,.ctl,.btn-cta,.btn-print,.consent,.top-year,.panel-sub,.field label.lab,.lab-block,.hint{font-family:Tajawal,Arial,sans-serif}
h1,h2,h3,.panel-title,.brand .nm,.registration-summary h2,.sub-title{font-family:'Reem Kufi',Tajawal,sans-serif;letter-spacing:0;line-height:1.7}
.lat,.panel-num{font-family:Arial,sans-serif}.lat{letter-spacing:.14em;font-size:11px;font-weight:700}
.topbar{background:#101311eF;border-bottom:1px solid #ffffff12;backdrop-filter:blur(14px);min-height:78px;padding:13px max(22px,calc((100vw - 1160px)/2));box-shadow:0 4px 15px #00000010}
.brand{gap:12px;text-decoration:none}.brand img{width:39px;height:48px;padding:4px;border-radius:9px;background:#fff;mix-blend-mode:normal}.brand .nm{font-size:16px;max-width:none}.brand .sg{font:10px Arial,sans-serif;letter-spacing:.13em;display:block;margin-top:5px;color:#c8b18a}
.top-year{border:1px solid #e3c58d35;background:#ffffff05;color:#eedec2;border-radius:9px;font-size:13px;padding:8px 14px;letter-spacing:0;transition:background .2s}.top-year:hover{background:#e3c58d15}
.registration-banner{position:relative;isolation:isolate;overflow:hidden;min-height:385px;padding:50px max(24px,calc((100vw - 1160px)/2)) 75px;gap:55px;background:radial-gradient(ellipse at 12% 70%,#67533344,transparent 50%),linear-gradient(120deg,#0d1512,#141816 55%,#111311);border-bottom:0;align-items:center}
.registration-banner::before{content:'1924';position:absolute;inset-inline-end:-30px;bottom:-65px;z-index:-1;font:900 clamp(160px,25vw,380px)/1 Arial,sans-serif;color:transparent;-webkit-text-stroke:1px #e3c58d16;letter-spacing:-.09em;pointer-events:none}
.registration-banner::after{content:'';position:absolute;bottom:0;inset-inline:0;height:4px;background:linear-gradient(90deg,transparent,#cba365,transparent)}
.hero-copy{max-width:710px}.registration-banner h1{font-weight:700;font-size:clamp(32px,3.5vw,51px);line-height:1.65;margin:10px 0;color:#fff}.registration-banner h1 span{color:#e2c695}.registration-banner p{margin:8px 0;max-width:660px;font-size:16px;color:#d2d4ce}.registration-banner .hero-tag{display:inline-flex;gap:9px;align-items:center;padding:5px 12px;border:1px solid #e3c58d38;border-radius:6px;color:#e3c58d;font-size:12px;background:#e3c58d0a}.hero-tag i{width:6px;height:6px;background:#d9b77b;border-radius:50%;box-shadow:0 0 0 4px #d9b77b15}
.registration-banner .hero-motto{font-size:18px;font-weight:700;color:#f0eee9;margin-top:0}.registration-banner .switch-section{display:inline-flex;align-items:center;gap:10px;color:#e3c58d;font-size:14px;text-decoration:none;border-bottom:1px solid #caa97460;padding-bottom:5px;margin-top:12px}.switch-section:hover{color:#fff}
.hero-emblem{flex:none;display:flex;flex-direction:column;align-items:center;gap:16px;position:relative;margin-inline:25px}.hero-emblem::before{content:'';position:absolute;width:210px;height:210px;top:-22px;border:1px solid #dcc49733;border-radius:50%;z-index:-1}.hero-emblem::after{content:'';position:absolute;width:235px;height:235px;top:-35px;border:1px solid #dcc49710;border-radius:50%;z-index:-1}.hero-emblem img{height:170px;width:137px;object-fit:contain;padding:20px;background:#faf9f4;box-shadow:0 15px 60px #0008;border:1px solid #e1d5be;border-radius:65px 65px 16px 16px}.hero-emblem span{font:700 11px Arial,sans-serif;color:#d6c3a1;letter-spacing:.25em}
.sheet{max-width:1220px;padding:0 24px 75px;margin:0 auto}.registration-route{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:#fff;padding:18px 22px;border:1px solid var(--line);box-shadow:0 12px 35px #10141109;border-radius:16px;position:relative;margin:-27px 0 26px;z-index:21}.registration-route a{display:flex;gap:7px;align-items:center;color:#52554f;font-weight:700;font-size:13px;text-decoration:none;flex:1;justify-content:center;white-space:nowrap;padding:4px 8px}.registration-route a:hover{color:var(--bronze-d)}.registration-route b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font:700 10px Arial,sans-serif;background:#f4f0e8;color:#906d34}.registration-route a:first-child b{background:#181e1a;color:#e3c58d}
.layout{grid-template-columns:minmax(0,1fr) 300px;gap:27px}.panel{border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:30px 32px 33px;margin-bottom:24px;background:#fff;scroll-margin-top:98px}.panel-head{gap:13px;margin-bottom:23px;padding-bottom:20px;border-bottom:1px solid #eeeae3}.panel-num{width:42px;height:45px;border-radius:11px;background:#171d19;color:#e5c58f;font-size:15px;font-weight:700;box-shadow:0 4px 10px #0000000a}.panel-title{font-size:21px;font-weight:700;margin:0}.panel-sub{font-size:14px;line-height:1.8;color:#74776f;margin-top:3px}.grid2{gap:19px 21px}.field{margin:0 0 9px;min-width:0}.field label.lab,.lab-block,.lab{font-weight:800;font-size:15px;margin:0 0 8px;display:block;color:#242923}.lab .req,.req{color:#946b2d}
.ctl{font-size:16px;font-weight:500;line-height:1.6;background:#f9f8f5;border:1px solid #e0ddd4;border-radius:10px;padding:12px 14px;min-height:51px;width:100%;box-shadow:inset 0 1px 2px #00000002;transition:border-color .2s,box-shadow .2s,background .2s;color:#1c231e}.ctl:hover{border-color:#c6bba6}.ctl:focus{border-color:#ad8643;background:#fff;box-shadow:0 0 0 4px #ad864314;outline:0}.ctl:focus-visible{outline:2px solid #ad8643;outline-offset:2px}.ctl::placeholder{color:#8c8e86;font-weight:400}.ctl[type=tel],.ctl[type=email],.ctl[type=date]{direction:ltr;text-align:right}.ctl option{font-family:Tajawal,sans-serif}textarea.ctl{min-height:95px}select.ctl{padding-inline-end:14px;padding-left:38px}.hint{font-size:13px;line-height:1.95;color:#71736c;margin-top:12px}.info-box{padding:17px 20px;border-radius:12px;background:#f8f5ed;border:1px solid #e9dfcc;border-inline-start:3px solid #b08a45;font-size:14px;line-height:1.9;margin:17px 0}.info-box p{font-size:14px;font-weight:500;color:#57584e;margin:4px 0}
.photo-instructions{display:flex;align-items:center;gap:15px;padding:18px;border:1px dashed #b7a076;background:linear-gradient(115deg,#fcfaf5,#f8f7f4);border-radius:14px;margin-bottom:15px}.photo-instructions svg{width:37px;height:37px;stroke:#987438;flex:none}.photo-instructions p{margin:0;font-size:14px;color:#72766b}.photo-instructions strong{display:block;color:#272e26;font-size:16px}#sports-photo{font-size:14px;padding:10px}#sports-photo::file-selector-button{font-family:Tajawal,sans-serif;font-weight:700;color:#e2c38e;background:#1c231d;padding:8px 15px;border:0;border-radius:7px;margin-inline-end:12px;cursor:pointer}.registration-photo{width:96px;height:121px;border:3px solid #e2d3b5;border-radius:12px;box-shadow:0 5px 18px #0000000e}
.consent{padding:15px;gap:12px;border:1px solid #e8e4dc;border-radius:11px;background:#fff;font-size:14px;line-height:1.85;margin:11px 0;align-items:flex-start;cursor:pointer}.consent input{width:19px;height:19px;min-width:19px;margin:4px 0 0;accent-color:#8b692f;cursor:pointer}.consent:has(input:checked){border-color:#c6ae80;background:#faf8f2}.consent:focus-within{outline:2px solid #b08a45;outline-offset:2px}.docs{gap:9px}.docs li{padding:12px 15px;border:1px solid #ece8df;border-radius:9px;background:#faf9f6;font-size:14px;font-weight:500}.docs li::before{content:'✓';color:#a07b3b;font-family:Arial,sans-serif;font-weight:700}.btn-cta{font-family:Tajawal,sans-serif;font-size:17px;font-weight:800;border:1px solid #d5b981;background:linear-gradient(110deg,#d4b47b,#efdab0);color:#1b241b;border-radius:11px;padding:16px 22px;box-shadow:0 7px 18px #ad864326;min-height:55px;text-decoration:none;justify-content:center;gap:10px;line-height:1.7;transition:transform .2s,box-shadow .2s;margin-top:21px}.btn-cta:hover{background:linear-gradient(110deg,#e0c28c,#f0dfc0);box-shadow:0 10px 22px #ad864336;transform:translateY(-2px)}.panel>button.btn-cta{width:100%}.btn-cta:disabled{opacity:.55;transform:none}.validation{color:#a51e30;font-size:14px}.panel.validation{background:#fff7f7;border-color:#e4bbc2}.panel.validation h2{font-size:18px}.confirmation{margin-top:35px;padding:40px;line-height:2}.confirmation .panel-num{background:#1b4330;color:#def2e6;border-radius:50%;width:55px;height:55px}.confirmation strong{font-size:14px}
.registration-summary{position:sticky;top:103px;text-align:center}.member-card{overflow:hidden;background:#151e18;border:1px solid #2c352e;border-radius:20px;color:#fff;box-shadow:0 16px 36px #15231a24;text-align:center;margin:0 0 20px}.member-card-top{padding:18px 20px;background:linear-gradient(135deg,#ffffff06,transparent);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff0d;font:700 10px Arial,sans-serif;letter-spacing:.13em;color:#ccb58c}.member-card-top img{height:31px;width:25px;object-fit:contain;border-radius:4px;background:#fff;padding:2px}.member-card-main{padding:27px 18px 22px;background:radial-gradient(ellipse at 50% 0,#ad86431c,transparent 70%)}.member-avatar{width:108px;height:130px;border-radius:54px 54px 14px 14px;border:1px solid #bc9b63;padding:5px;box-shadow:0 0 0 5px #b08a450c;margin:0 auto 17px;background:#ffffff05;overflow:hidden;display:grid;place-items:center}.member-avatar img{width:100%;height:100%;object-fit:cover;border-radius:48px 48px 10px 10px}.member-avatar svg{width:52px;height:52px;stroke:#a9936b}.member-card-main h2{color:#fff;font-size:19px;margin:8px 0;overflow-wrap:anywhere}.member-card-main p{font-size:13px;color:#bdc6bd;margin:4px 0}.member-section{display:inline-block;border:1px solid #e2c69540;color:#e2c695;border-radius:25px;padding:3px 15px;font-size:12px}.member-meta{display:grid;grid-template-columns:1fr 1fr;padding:16px 12px;border-top:1px solid #ffffff0b;background:#ffffff03;gap:10px}.member-meta small{display:block;color:#97a396;font-size:11px}.member-meta strong{font-size:13px;color:#e8e5da;font-weight:500;display:block;margin-top:3px}.member-meta>div+div{border-inline-start:1px solid #ffffff12}.member-card-note{font-size:11px;color:#a9b1a4;padding:12px 15px;background:#0e1711;border-top:1px solid #ffffff08}.registration-summary .summary-steps{text-align:right;padding:24px;border-radius:16px}.summary-steps h3{font-size:16px;margin:0 0 15px}.summary-steps ol{padding:0;list-style:none;counter-reset:step;display:grid;gap:16px;line-height:1.8;font-size:13px;color:#6f746a}.summary-steps li{position:relative;padding-inline-start:35px;counter-increment:step;min-height:25px}.summary-steps li::before{content:counter(step);position:absolute;inset-inline-start:0;top:1px;background:#f4f0e6;color:#967038;border:1px solid #e8dfce;border-radius:50%;width:23px;height:23px;font:700 10px/23px Arial,sans-serif;text-align:center}.summary-steps li:not(:last-child)::after{content:'';position:absolute;inset-inline-start:11px;top:28px;height:14px;border-inline-start:1px dashed #d9cfbd}.summary-steps .hint{border-top:1px solid #eee8db;padding-top:15px;font-size:12px}
.foot{background:#111a14;color:#b9c1b7;margin-top:0}.foot-in{padding:30px max(24px,calc((100vw - 1160px)/2));font-size:13px;line-height:2}.foot-in a{color:#d7bc8d}.foot .wall{display:none}
@media(min-width:1600px){.registration-banner{min-height:400px}}
@media(max-width:1000px){.layout{grid-template-columns:minmax(0,1fr) 260px;gap:20px}.panel{padding:25px}.brand .nm{font-size:14px}.registration-banner{gap:25px}.hero-emblem{margin-inline:10px}.registration-route a{font-size:12px;padding:4px}}
@media(max-width:800px){.layout{display:flex;flex-direction:column}.layout>div{width:100%}.registration-summary{position:static;display:grid;grid-template-columns:1fr 1fr;gap:18px;width:100%}.member-card{margin:0}.registration-summary .summary-steps{margin:0}.hero-emblem{display:none}.registration-banner{min-height:auto;padding:30px 24px 65px}.registration-banner h1{font-size:35px}.registration-route{margin-top:-25px;gap:8px;padding:14px}.registration-route a{flex:1 1 27%;justify-content:flex-start}.grid2{grid-template-columns:1fr 1fr}.sheet{padding-inline:18px}.topbar{padding-inline:18px}.panel-title{font-size:20px}}
@media(max-width:540px){.topbar{min-height:72px;gap:8px;padding:10px 14px}.brand .nm{font-size:12px;white-space:normal;max-width:190px}.brand .sg{font-size:8px}.brand img{width:32px;height:41px}.brand{gap:8px}.top-year{font-size:11px;padding:6px 9px;white-space:nowrap}.registration-banner{padding:26px 20px 56px}.registration-banner h1{font-size:29px;line-height:1.75}.registration-banner p{font-size:14px}.registration-banner .hero-motto{font-size:16px}.registration-banner::before{font-size:200px;bottom:-22px}.registration-route{padding:10px 9px;gap:5px;border-radius:13px;margin-bottom:20px}.registration-route a{font-size:11px;gap:5px;padding:4px 2px}.registration-route b{height:23px;width:23px;font-size:9px}.sheet{padding-inline:12px}.panel{padding:22px 18px;border-radius:17px;margin-bottom:18px}.panel-head{padding-bottom:16px;gap:10px}.panel-num{width:35px;height:38px;font-size:13px;border-radius:9px}.panel-title{font-size:18px}.panel-sub{font-size:12px}.grid2{grid-template-columns:1fr;gap:11px}.ctl{font-size:16px;min-height:50px}.field label.lab{font-size:14px}.registration-summary{grid-template-columns:1fr;max-width:100%;margin:0 auto}.member-card-main{padding:22px}.member-card{width:100%}.confirmation{padding:27px 18px}.btn-cta{font-size:15px;padding:14px 15px}.photo-instructions{padding:13px;gap:12px}.photo-instructions strong{font-size:15px}.consent{padding:13px;font-size:13px}.foot-in{padding:25px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.btn-cta:hover{transform:none}}
