/*
Theme Name: Agadir Golf Cup 2026 Complete
Theme URI: https://agadirgolfcup.com
Author: Agadir Souss Massa Golf Cup
Description: Site complet de l'Agadir Souss Massa Golf Cup 2026 — Where the Ocean Meets the Green
Version: 2.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: agadir-golf
*/

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{font-family:'DM Sans',sans-serif;background:#0B1622;color:#E8EDF2;overflow-x:hidden}
img{max-width:100%;height:auto}a{text-decoration:none;color:inherit}
::selection{background:rgba(212,160,23,.25);color:#fff}

:root{
--blue:#1B4F72;--green:#1E8449;--gold:#D4A017;--gold-light:#E8C84A;
--sky:#85C1E9;--sand:#F5DEB3;--ocre:#C27E3A;--red:#C0392B;
--dark:#0B1622;--dark-card:#132D46;--darker:#0A1520;--darkest:#070E18;
--white:#FFFFFF;--text:#E8EDF2;--text-sec:#8BA4BD;--text-muted:#5A7A96;--border:#1E3348;
}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(11,22,34,.85);backdrop-filter:blur(12px);border-bottom:1px solid rgba(30,51,72,.5);padding:0 40px;height:64px;display:flex;align-items:center;justify-content:space-between;transition:.3s}
.nav.scrolled{background:rgba(11,22,34,.97)}
.nav-logo{display:flex;align-items:center;gap:10px}
.nav-icon{width:34px;height:34px;border-radius:50%;border:1.5px solid rgba(212,160,23,.3);display:flex;align-items:center;justify-content:center}
.nav-name{font-family:'Cormorant Garamond',serif;font-size:15px;font-weight:700;color:var(--gold)}
.nav-links{display:flex;gap:28px;list-style:none}
.nav-links a{font-size:12px;font-weight:500;color:var(--text-sec);letter-spacing:.5px;transition:.3s;position:relative}
.nav-links a:hover{color:var(--gold)}
.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1.5px;background:var(--gold);transition:.3s}
.nav-links a:hover::after{width:100%}
.nav-cta{padding:8px 22px;background:var(--gold);color:#1C1C1C;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;transition:.3s}
.nav-cta:hover{background:var(--white)}
.nav-burger{display:none;background:none;border:none;cursor:pointer;padding:8px}
.nav-burger span{display:block;width:22px;height:2px;background:var(--text);margin:5px 0;transition:.3s}

/* HERO */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--dark) 0%,var(--blue) 60%,var(--green) 100%);overflow:hidden}
.hero-c1{position:absolute;top:-10%;right:-5%;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(212,160,23,.08),transparent 70%)}
.hero-c2{position:absolute;bottom:-15%;left:-10%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(30,132,73,.12),transparent 70%)}
.hero-wave{position:absolute;bottom:0;left:0;width:100%}
.hero-pat{position:absolute;inset:0;opacity:.025}
.hero-cnt{position:relative;z-index:2;text-align:center;padding:0 24px;max-width:900px}
.hero-date{font-family:'Cormorant Garamond',serif;font-size:14px;letter-spacing:6px;text-transform:uppercase;color:var(--gold);margin-bottom:20px;opacity:0;animation:fadeUp 1s .2s forwards}
.hero-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(38px,7vw,76px);font-weight:700;color:var(--white);line-height:1.05;margin-bottom:8px;opacity:0;animation:fadeUp 1s .4s forwards}
.hero-h1g{color:var(--gold);display:block;opacity:0;animation:fadeUp 1s .6s forwards}
.hero-sep{width:80px;height:2px;background:var(--gold);margin:24px auto;opacity:0;animation:scX .8s .8s forwards;transform-origin:left}
.hero-sub{font-family:'Cormorant Garamond',serif;font-size:clamp(18px,2.5vw,26px);font-style:italic;color:var(--sky);margin-bottom:20px;opacity:0;animation:fadeUp 1s 1s forwards}
.hero-btn{display:inline-block;padding:16px 44px;background:var(--gold);color:#1C1C1C;font-weight:700;font-size:14px;letter-spacing:2px;text-transform:uppercase;transition:.3s;opacity:0;animation:fadeUp 1s 1.2s forwards}
.hero-btn:hover{background:var(--white);color:var(--blue)}

/* COUNTDOWN */
.countdown{background:var(--darkest);padding:40px 24px;border-bottom:1px solid rgba(212,160,23,.1)}
.countdown-inner{max-width:800px;margin:0 auto;text-align:center}
.countdown-label{font-family:'Cormorant Garamond',serif;font-size:18px;color:var(--gold);margin-bottom:20px;font-style:italic}
.countdown-boxes{display:flex;justify-content:center;gap:16px}
.cd-box{background:var(--dark-card);border:1px solid var(--border);border-top:2px solid var(--gold);padding:16px 24px;min-width:90px;text-align:center}
.cd-num{font-family:'Cormorant Garamond',serif;font-size:42px;font-weight:700;color:var(--gold);line-height:1}
.cd-lbl{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:2px;margin-top:6px}

/* STATS */
.stats{background:var(--dark);padding:56px 24px;border-bottom:1px solid rgba(212,160,23,.1)}
.stats-g{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);gap:24px;text-align:center}
.stat-n{font-family:'Cormorant Garamond',serif;font-size:42px;font-weight:700;color:var(--gold);line-height:1}
.stat-l{font-size:11px;color:var(--sky);letter-spacing:2px;text-transform:uppercase;margin-top:8px}

/* SECTIONS */
.sec{padding:100px 24px}
.sec-dk{background:linear-gradient(180deg,var(--dark),var(--darker))}
.sec-dkr{background:var(--dark)}
.sec-dkst{background:var(--darkest)}
.sec-grad{background:linear-gradient(135deg,var(--blue),var(--green))}
.con{max-width:1100px;margin:0 auto}
.sec-badge{font-size:12px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.sec-title{font-family:'Cormorant Garamond',serif;font-size:clamp(30px,4vw,46px);font-weight:700;color:var(--white);margin-bottom:16px;line-height:1.1}
.sec-desc{font-size:16px;color:var(--sky);max-width:620px;line-height:1.7;margin-bottom:48px}

/* CARDS */
.cg{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.cd{background:var(--dark-card);border-left:3px solid var(--gold);padding:28px 24px;transition:.3s}
.cd:hover{transform:translateY(-4px)}
.cd-i{font-size:28px;margin-bottom:12px}
.cd-t{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:700;color:var(--gold);margin-bottom:8px}
.cd-p{font-size:14px;color:var(--text-muted);line-height:1.6}

/* WEATHER */
.weather-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}
.weather-card{background:var(--dark-card);border:1px solid var(--border);border-radius:8px;padding:20px 16px;text-align:center;transition:.3s}
.weather-card:hover{border-color:var(--gold)}
.weather-month{font-size:12px;font-weight:600;color:var(--text-sec);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}
.weather-icon{font-size:28px;margin-bottom:6px}
.weather-temp{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:700;color:var(--gold)}
.weather-detail{font-size:10px;color:var(--text-muted);margin-top:4px}
.weather-highlight{border-color:var(--gold);background:rgba(212,160,23,.08)}

/* MAP */
.map-wrap{border-radius:8px;overflow:hidden;border:2px solid var(--border);height:420px;position:relative}
.map-wrap iframe{width:100%;height:100%;border:0}
.map-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:20px}
.map-item{background:var(--dark-card);border-left:3px solid var(--gold);padding:14px 16px;display:flex;gap:12px;align-items:center}
.map-pin{font-size:20px;min-width:28px;text-align:center}
.map-name{font-size:13px;font-weight:600;color:var(--white)}
.map-addr{font-size:11px;color:var(--text-muted);margin-top:2px}

/* PROGRAMME */
.prog-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}
.day{background:var(--dark-card);overflow:hidden}
.day-h{padding:20px 24px;text-align:center}
.day-hb{background:var(--blue)}.day-hg{background:var(--green)}.day-hgd{background:var(--gold)}
.day-lb{font-size:12px;letter-spacing:3px;text-transform:uppercase;margin-bottom:4px}
.day-hb .day-lb,.day-hg .day-lb{color:var(--gold)}.day-hgd .day-lb{color:#1C1C1C}
.day-nm{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:700;color:var(--white)}
.day-items{padding:20px 24px}
.day-it{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid rgba(27,79,114,.2)}
.day-it:last-child{border-bottom:none}
.day-tm{font-family:'Cormorant Garamond',serif;font-size:15px;font-weight:700;color:var(--gold);min-width:50px}
.day-ev{font-size:14px;font-weight:600;color:var(--white)}
.day-lc{font-size:12px;color:var(--sky);margin-top:2px}

/* COURSES */
.crs-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.crs{background:var(--dark-card);padding:28px 24px;position:relative;transition:.3s}
.crs:hover{transform:translateY(-6px)}
.crs-tag{position:absolute;top:12px;right:12px;background:var(--gold);color:#1C1C1C;font-size:9px;font-weight:700;padding:3px 8px;letter-spacing:1px}
.crs-nm{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:700;margin-bottom:4px}
.crs-sn{font-family:'Cormorant Garamond',serif;font-size:16px;font-style:italic;color:var(--gold);margin-bottom:12px}
.crs-info{font-size:12px;color:var(--sky);margin-bottom:4px}
.crs-sep{width:40px;height:1px;background:var(--gold);margin:12px 0}
.crs-desc{font-size:13px;color:var(--text-muted);line-height:1.6}

/* BUDGET */
.budget-row{display:flex;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}
.budget-row:nth-child(even){background:rgba(19,47,70,.5)}
.budget-icon{font-size:20px;min-width:36px;text-align:center}
.budget-label{flex:1;font-size:14px;font-weight:600;color:var(--white);margin-left:12px}
.budget-amount{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:700;color:var(--green);min-width:140px;text-align:right}
.budget-note{font-size:11px;color:var(--text-muted);min-width:200px;text-align:right;margin-left:16px}
.budget-total{background:var(--blue);padding:18px 20px;display:flex;align-items:center;justify-content:space-between}
.budget-total-label{font-size:16px;font-weight:700;color:var(--white)}
.budget-total-amount{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:700;color:var(--gold)}

/* PARTICIPANTS */
.part-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.part{background:var(--dark-card);border-top:3px solid var(--gold);padding:24px;transition:.3s}
.part:hover{transform:translateY(-4px)}
.part-i{font-size:24px;margin-bottom:10px}
.part-t{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:700;color:var(--gold);margin-bottom:6px}
.part-p{font-size:12px;color:var(--text-muted);line-height:1.5}

/* EXPERIENCES */
.exp-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.exp{background:var(--dark-card);border-left:3px solid var(--gold);padding:24px;display:flex;gap:16px;transition:.3s}
.exp:hover{transform:translateY(-3px)}
.exp-i{font-size:28px;min-width:36px}
.exp-t{font-size:16px;font-weight:700;color:var(--gold);margin-bottom:4px}
.exp-tag{display:inline-block;background:var(--gold);color:#1C1C1C;font-size:8px;font-weight:700;padding:2px 6px;letter-spacing:1px;margin-left:8px;vertical-align:middle}
.exp-p{font-size:12px;color:var(--text-muted);line-height:1.5;margin-top:6px}

/* CTA */
.cta{position:relative;overflow:hidden;text-align:center}
.cta-pat{position:absolute;inset:0;opacity:.04}
.cta-cnt{position:relative;z-index:2}
.cta-t{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,4vw,44px);font-weight:700;color:var(--white);margin-bottom:16px}
.cta-p{font-size:16px;color:var(--sky);max-width:500px;margin:0 auto 32px;line-height:1.7}
.cta-btn{display:inline-block;padding:16px 44px;background:var(--gold);color:#1C1C1C;font-weight:700;font-size:14px;letter-spacing:2px;text-transform:uppercase;transition:.3s}
.cta-btn:hover{background:var(--white)}

/* FOOTER */
.footer{background:#070E18;padding:60px 24px 32px}
.footer-top{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:40px;padding-bottom:32px;border-bottom:1px solid var(--border)}
.footer-brand{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:700;color:var(--gold);margin-bottom:12px}
.footer-sub{font-family:'Cormorant Garamond',serif;font-size:14px;font-style:italic;color:var(--sky);margin-bottom:16px}
.footer-p{font-size:13px;color:var(--text-muted);line-height:1.7}
.footer-h{font-size:12px;font-weight:700;color:var(--gold);letter-spacing:2px;text-transform:uppercase;margin-bottom:16px}
.footer-link{display:block;font-size:13px;color:var(--text-sec);margin-bottom:10px;transition:.3s}
.footer-link:hover{color:var(--gold)}
.footer-copy{text-align:center;font-size:11px;color:#445566}

/* ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes scX{from{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}
@keyframes scrollDot{0%{opacity:1;top:6px}100%{opacity:0;top:20px}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}
.reveal{opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.22,1,.36,1)}
.reveal.visible{opacity:1;transform:translateY(0)}

/* RESPONSIVE */
@media(max-width:768px){
.nav-links,.nav-cta{display:none}.nav-burger{display:block}.nav{padding:0 16px}
.stats-g{grid-template-columns:repeat(3,1fr);gap:16px}.stat-n{font-size:32px}
.sec{padding:60px 16px}.hero{min-height:90vh}
.prog-g,.exp-g{grid-template-columns:1fr}.crs-g{grid-template-columns:repeat(2,1fr)}
.footer-top{grid-template-columns:1fr;gap:24px}
.countdown-boxes{gap:8px}.cd-box{padding:12px 16px;min-width:70px}.cd-num{font-size:32px}
.budget-note{display:none}.map-wrap{height:300px}
}
@media(max-width:480px){.crs-g,.weather-g{grid-template-columns:repeat(2,1fr)}.stats-g{grid-template-columns:repeat(2,1fr)}}
