:root {
  --ink: #1b1512;
  --paper: #f7f1ea;
  --paper-2: #fffaf5;
  --accent: #c4542e;
  --accent-dark: #8f3f22;
  --accent-2: #1f6f78;
  --accent-3: #d1a054;
  --indigo: var(--accent);
  --purple: var(--accent-2);
  --pink: var(--accent-3);
  --gray-50: #f7f1ea;
  --gray-100: #f1e7dd;
  --gray-200: #e4d5c7;
  --gray-300: #d1c0b2;
  --gray-600: #5f554d;
  --gray-700: #4b423c;
  --gray-900: #1b1512;
  --white: #fffaf5;
  --shadow: 0 10px 30px rgba(27, 21, 18, 0.08);
  --shadow-lg: 0 20px 50px rgba(27, 21, 18, 0.15);
  --shadow-xl: 0 30px 70px rgba(27, 21, 18, 0.2);
  --transition: all 0.3s ease;
  --transition-slow: all 0.4s ease;
}
body{font-family:'Manrope',sans-serif;color:var(--ink);background:var(--paper)}
.mag-body{background-image:radial-gradient(circle at 10% 10%,rgba(209,160,84,.12),transparent 40%),radial-gradient(circle at 90% 15%,rgba(31,111,120,.12),transparent 35%),linear-gradient(180deg,rgba(255,250,245,.9),rgba(247,241,234,.95))}
h1,h2,h3,h4,.font-serif{font-family:'Playfair Display',serif}
        .page-section{display:none;animation:fadeIn .3s ease-in-out}
        .page-section.active{display:block}
        @keyframes fadeIn{from{opacity:0}to{opacity:1}}
        @keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
        @keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}
        @keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
        @keyframes slideInLeft{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}
        @keyframes slideInRight{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}
        .nav-link{position:relative;transition:var(--transition)}
        .nav-link::before{content:'';position:absolute;bottom:0;left:50%;width:0;height:2px;background:linear-gradient(90deg,var(--indigo),var(--pink));transition:var(--transition);transform:translateX(-50%)}
        .nav-link:hover::before{width:80%}
        .nav-link:hover{transform:translateY(-2px);color:var(--indigo)!important}
        button[onclick="navigateTo('reading')"]{transition:var(--transition);position:relative;overflow:hidden}
        button[onclick="navigateTo('reading')"]:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(79,70,229,.3)}
        button[onclick="navigateTo('reading')"]::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.2);transform:translate(-50%,-50%);transition:width .6s,height .6s}
        button[onclick="navigateTo('reading')"]:hover::before{width:300px;height:300px}
        .flex.items-center.cursor-pointer{transition:var(--transition)}
        .flex.items-center.cursor-pointer:hover{transform:scale(1.05)}
        .flex.items-center.cursor-pointer:hover .h-2{animation:pulse 1s infinite}
        .team-card,.pricing-card,.article-card,.contact-info-card{position:relative;background:var(--white);border-radius:16px;overflow:hidden;transition:var(--transition-slow);box-shadow:var(--shadow)}
        .team-card:hover,.pricing-card:hover,.article-card:hover,.contact-info-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl)}
        .team-card{animation:fadeInUp .6s ease forwards;box-shadow:var(--shadow),0 2px 4px -1px rgba(0,0,0,.06)}
        .team-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-xl),0 10px 10px -5px rgba(0,0,0,.04)}
        .team-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--indigo),var(--pink),var(--indigo));background-size:200% 100%;opacity:0;transition:opacity .4s}
        .team-card:hover::before{opacity:1;animation:gradientShift 2s ease infinite}
        .team-image-wrapper{position:relative;width:140px;height:140px;margin:-70px auto 0;z-index:1}
        .team-image{width:100%;height:100%;border-radius:50%;object-fit:cover;border:5px solid var(--white);box-shadow:0 10px 25px rgba(0,0,0,.15);transition:var(--transition-slow)}
        .team-card:hover .team-image{transform:scale(1.1);box-shadow:0 15px 35px rgba(79,70,229,.3)}
        .team-image-wrapper::after{content:'';position:absolute;inset:-5px;border-radius:50%;background:linear-gradient(135deg,var(--indigo),var(--pink));opacity:0;transition:opacity .4s;z-index:-1}
        .team-card:hover .team-image-wrapper::after{opacity:1}
        .team-role{position:relative;display:inline-block;padding:4px 12px;background:linear-gradient(135deg,var(--gray-100),var(--gray-200));border-radius:20px;font-size:.75rem;font-weight:500;color:var(--indigo);transition:var(--transition)}
        .team-card:hover .team-role{background:linear-gradient(135deg,var(--indigo),#6366f1);color:var(--white);transform:scale(1.05)}
        .team-social-icons{display:flex;justify-content:center;gap:12px;margin-top:16px;opacity:0;transform:translateY(10px);transition:var(--transition-slow)}
        .team-card:hover .team-social-icons{opacity:1;transform:translateY(0)}
        .team-social-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--gray-100);color:#6b7280;transition:var(--transition);cursor:pointer}
        .team-social-icon:hover{background:linear-gradient(135deg,var(--indigo),#6366f1);color:var(--white);transform:translateY(-3px) scale(1.1)}
        .team-hero,.pricing-hero,.contact-hero,.reading-hero{position:relative;overflow:hidden}
        .team-hero{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}
        .team-hero::before{content:'';position:absolute;inset:0;background:url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><defs><pattern id="grid" width="100" height="100" patternUnits="userSpaceOnUse"><path d="M 100 0 L 0 0 0 100" fill="none" stroke="rgba(255,255,255,0.1)" stroke-width="1"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');opacity:.3}
        .team-stat-card{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:24px;text-align:center;transition:var(--transition)}
        .team-stat-card:hover{background:rgba(255,255,255,.15);transform:translateY(-5px)}
        .team-card:nth-child(1){animation-delay:.1s}.team-card:nth-child(2){animation-delay:.2s}.team-card:nth-child(3){animation-delay:.3s}.team-card:nth-child(4){animation-delay:.4s}.team-card:nth-child(5){animation-delay:.5s}
        .pricing-hero{background:linear-gradient(135deg,var(--indigo) 0%,var(--purple) 50%,var(--pink) 100%)}
        .pricing-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.1) 0%,transparent 50%)}
        .pricing-card{border-radius:20px;box-shadow:var(--shadow-lg),0 4px 6px -2px rgba(0,0,0,.05)}
        .pricing-card:hover{transform:translateY(-12px) scale(1.03);box-shadow:0 25px 50px -12px rgba(0,0,0,.25)}
        .pricing-card.featured{border:3px solid var(--indigo);transform:scale(1.05)}
        .pricing-card.featured::before{content:'POPULAIRE';position:absolute;top:20px;right:-35px;background:linear-gradient(135deg,var(--indigo),var(--pink));color:var(--white);padding:5px 40px;font-size:.75rem;font-weight:bold;transform:rotate(45deg);box-shadow:var(--shadow);z-index:10}
        .pricing-card-header{background:linear-gradient(135deg,var(--gray-50),var(--gray-100));padding:32px 24px;text-align:center;position:relative}
        .pricing-card.featured .pricing-card-header{background:linear-gradient(135deg,#eef2ff,#e0e7ff)}
        .pricing-price{font-size:3.5rem;font-weight:800;background:linear-gradient(135deg,var(--indigo),var(--purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}
        .pricing-feature{padding:16px 24px;border-bottom:1px solid var(--gray-100);transition:var(--transition)}
        .pricing-feature:hover{background:var(--gray-50);padding-left:32px}
        .pricing-feature:last-child{border-bottom:none}
.pricing-button,.reading-button,.contact-submit-button{width:100%;padding:14px 24px;font-weight:600;border-radius:12px;transition:var(--transition);position:relative;overflow:hidden}
.reading-button,.contact-submit-button{width:auto;padding:12px 32px;background:linear-gradient(135deg,var(--indigo),var(--purple))}
.contact-submit-button{padding:16px 32px}
.contact-submit-button:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:none}
        .pricing-button::before,.reading-button::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%);transition:width .6s,height .6s}
        .pricing-button:hover::before,.reading-button:hover::before{width:300px;height:300px}
        .reading-button::before,.contact-submit-button::before{top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);border-radius:0;transform:none;transition:left .5s}
        .reading-button:hover::before,.contact-submit-button:hover::before{left:100%}
        .reading-button:hover,.contact-submit-button:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(79,70,229,.3)}
        .contact-hero{background:linear-gradient(135deg,#1e293b 0%,#334155 100%)}
        .contact-hero::before{content:'';position:absolute;inset:0;background:url('data:image/svg+xml,<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg"><defs><pattern id="contactGrid" width="60" height="60" patternUnits="userSpaceOnUse"><path d="M 60 0 L 0 0 0 60" fill="none" stroke="rgba(255,255,255,0.05)" stroke-width="1"/></pattern></defs><rect width="60" height="60" fill="url(%23contactGrid)"/></svg>')}
        .contact-info-card{box-shadow:0 10px 25px rgba(0,0,0,.1);height:100%;padding:40px}
        .contact-icon-wrapper{width:72px;height:72px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eef2ff,#e0e7ff);margin-bottom:24px;transition:var(--transition)}
        .contact-info-card:hover .contact-icon-wrapper{background:linear-gradient(135deg,var(--indigo),#6366f1);transform:scale(1.1) rotate(5deg)}
        .contact-info-card:hover .contact-icon-wrapper i{color:var(--white)}
        .contact-form-input{width:100%;padding:14px 18px;border:2px solid var(--gray-200);border-radius:12px;transition:var(--transition);font-size:15px}
        .contact-form-input:focus{outline:none;border-color:var(--indigo);box-shadow:0 0 0 4px rgba(79,70,229,.1);transform:translateY(-2px)}
        .contact-form-textarea{min-height:140px;resize:vertical}
        .contact-form-wrapper{animation:slideInRight .6s ease}
        .contact-info-wrapper{animation:slideInLeft .6s ease}
        .reading-hero{background:linear-gradient(135deg,#0f172a 0%,#1e293b 50%,#334155 100%);position:relative;overflow:hidden}
        .reading-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 30% 20%,rgba(79,70,229,.3) 0%,transparent 50%),radial-gradient(circle at 70% 80%,rgba(236,72,153,.3) 0%,transparent 50%);animation:glow 8s ease-in-out infinite}
        .reading-hero::after{content:'';position:absolute;inset:0;background:url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><defs><pattern id="readingGrid" width="100" height="100" patternUnits="userSpaceOnUse"><path d="M 100 0 L 0 0 0 100" fill="none" stroke="rgba(255,255,255,0.03)" stroke-width="1"/></pattern></defs><rect width="100" height="100" fill="url(%23readingGrid)"/></svg>');opacity:.5}
        @keyframes glow{0%,100%{opacity:1}50%{opacity:.7}}
        .magazine-reader{background:var(--white);border-radius:32px;box-shadow:0 30px 60px -15px rgba(0,0,0,.4),0 0 0 1px rgba(0,0,0,.05);overflow:hidden;transition:var(--transition-slow);position:relative}
        .magazine-reader::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 0%,rgba(79,70,229,.02) 100%);pointer-events:none;z-index:1}
        .magazine-reader:hover{transform:translateY(-12px) scale(1.01);box-shadow:0 40px 80px -20px rgba(0,0,0,.5),0 0 0 1px rgba(79,70,229,.1)}
        .magazine-page{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);padding:56px;border-right:3px solid #e2e8f0;position:relative;backdrop-filter:blur(10px)}
        .magazine-page::before{content:'';position:absolute;top:0;left:0;width:6px;height:100%;background:linear-gradient(180deg,var(--indigo),var(--pink),var(--indigo));background-size:100% 200%;animation:gradientShift 3s ease infinite}
        .magazine-image-wrapper{position:relative;overflow:hidden;background:#000}
        .magazine-image-wrapper::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.15) 50%,rgba(0,0,0,.4) 100%);pointer-events:none;z-index:1}
        .magazine-image-wrapper img{transition:transform 1s cubic-bezier(0.4,0,0.2,1)}
        .magazine-reader:hover .magazine-image-wrapper img{transform:scale(1.05)}
        .article-card{animation:fadeInUp .6s ease forwards;cursor:pointer;position:relative;overflow:visible}
        .article-card::before{content:'';position:absolute;inset:-2px;background:linear-gradient(135deg,var(--indigo),var(--pink));border-radius:18px;opacity:0;transition:opacity .3s;z-index:-1}
        .article-card:hover::before{opacity:.1}
        .article-card-image{width:100%;height:220px;object-fit:cover;transition:transform .6s cubic-bezier(0.4,0,0.2,1)}
        .article-card:hover .article-card-image{transform:scale(1.15) translateY(-5px)}
        .article-badge{display:inline-block;padding:6px 14px;background:linear-gradient(135deg,var(--indigo),#6366f1);color:var(--white);border-radius:24px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 12px rgba(79,70,229,.3);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}
        .article-card:nth-child(1){animation-delay:.1s}.article-card:nth-child(2){animation-delay:.2s}.article-card:nth-child(3){animation-delay:.3s}.article-card:nth-child(4){animation-delay:.4s}
        .magazine-meta{display:flex;align-items:center;gap:20px;color:#64748b;font-size:.875rem;flex-wrap:wrap}
        .magazine-meta-item{display:flex;align-items:center;gap:8px;padding:6px 12px;background:rgba(100,116,139,.1);border-radius:12px;transition:var(--transition)}
        .magazine-meta-item:hover{background:rgba(100,116,139,.15);transform:translateY(-2px)}
        .article-tag{position:relative;padding:6px 14px;border-radius:20px;font-size:.75rem;font-weight:600;transition:var(--transition);cursor:pointer}
        .article-tag:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px rgba(0,0,0,.15)}
        .reading-button{position:relative;overflow:hidden;z-index:1}
        .reading-button::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,var(--purple),var(--pink));opacity:0;transition:opacity .3s;z-index:-1}
        .reading-button:hover::after{opacity:1}
        .article-read-more{position:relative;transition:var(--transition)}
        .article-read-more i{transition:transform .3s}
        .article-card:hover .article-read-more i{transform:translateX(4px)}
        .magazine-page-content{position:relative;z-index:2}

.mag-nav{background:rgba(255,250,245,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--gray-200)}
.mag-nav .font-serif{letter-spacing:.6px}
.hero-splash{background:linear-gradient(135deg,#1b1512 0%,#241a15 40%,#2f231d 100%);position:relative}
.hero-splash::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(209,160,84,.25),transparent 45%),radial-gradient(circle at 80% 10%,rgba(31,111,120,.2),transparent 40%);mix-blend-mode:screen;opacity:.8}
.hero-splash .absolute img{filter:grayscale(10%) contrast(1.05) saturate(.9)}
.btn-primary{background:linear-gradient(135deg,var(--accent),#e16a3f);box-shadow:0 12px 25px rgba(196,84,46,.3);position:relative;overflow:hidden}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 35px rgba(196,84,46,.35)}
.btn-secondary{background:rgba(255,250,245,.9);border:1px solid rgba(196,84,46,.35);color:var(--accent-dark)}
.btn-secondary:hover{background:rgba(255,250,245,1);transform:translateY(-2px)}
.mission-card{background:linear-gradient(180deg,#fffaf5 0%,#f2e6db 100%);border:1px solid rgba(27,21,18,.08);box-shadow:var(--shadow)}
.mission-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.cta-banner{background:linear-gradient(120deg,#1f6f78 0%,#c4542e 55%,#d1a054 100%)}
.site-footer{background:#14110f;border-top:1px solid rgba(255,250,245,.08)}

.team-hero{background:linear-gradient(135deg,#1f6f78 0%,#0f3b40 100%)}
.pricing-hero{background:linear-gradient(135deg,#c4542e 0%,#1f6f78 60%,#d1a054 100%)}
.reading-hero{background:linear-gradient(135deg,#14110f 0%,#2a221d 55%,#3a2d25 100%)}
.contact-hero{background:linear-gradient(135deg,#2a221d 0%,#3a2d25 100%)}
.magazine-page{background:linear-gradient(135deg,#fffaf5 0%,#f3e7dc 100%);border-right:3px solid #e4d5c7}
.contact-icon-wrapper{background:linear-gradient(135deg,rgba(209,160,84,.2),rgba(31,111,120,.18))}
.contact-info-card:hover .contact-icon-wrapper{background:linear-gradient(135deg,var(--accent),var(--accent-2))}

.bg-gray-900{background-color:#14110f !important}
.bg-white{background-color:var(--paper-2) !important}
.bg-gray-50{background-color:var(--gray-50) !important}
.bg-gray-100{background-color:var(--gray-100) !important}
.border-gray-200{border-color:var(--gray-200) !important}
.text-gray-900{color:var(--ink) !important}
.text-gray-700{color:var(--gray-700) !important}
.text-gray-600{color:var(--gray-600) !important}
.text-gray-500{color:#7a6f66 !important}
.text-gray-300{color:#d8cfc6 !important}
.text-indigo-600{color:var(--accent) !important}
.text-indigo-700{color:var(--accent-dark) !important}
.bg-indigo-600{background-color:var(--accent) !important}
.bg-indigo-700{background-color:var(--accent-dark) !important}
.bg-indigo-100{background-color:rgba(196,84,46,.12) !important}
.bg-indigo-200{background-color:rgba(196,84,46,.2) !important}
.text-pink-500{color:var(--accent-2) !important}
.bg-pink-500{background-color:var(--accent-2) !important}
.from-indigo-600{--tw-gradient-from:var(--accent) !important;--tw-gradient-to:rgba(196,84,46,0) !important;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to) !important}
.via-purple-600{--tw-gradient-to:rgba(31,111,120,0) !important;--tw-gradient-stops:var(--tw-gradient-from),var(--accent-2),var(--tw-gradient-to) !important}
.to-pink-600{--tw-gradient-to:var(--accent-3) !important}
html { scroll-behavior: smooth; }
img { max-width: 100%; display: block; }
:focus-visible { outline: 2px solid var(--indigo); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration: 0.001ms !important; scroll-behavior: auto !important; }
}

.paywall-overlay{position:fixed;inset:0;background:rgba(20,17,15,.6);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:60;padding:24px}
.paywall-overlay.hidden{display:none}
.paywall-card{background:var(--paper-2);border-radius:24px;box-shadow:var(--shadow-xl);max-width:520px;width:100%;padding:36px 32px;position:relative;border:1px solid rgba(27,21,18,.08)}
.paywall-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;border:none;background:var(--gray-100);color:var(--gray-700);font-size:20px;cursor:pointer;transition:var(--transition)}
.paywall-close:hover{background:var(--gray-200);transform:scale(1.05)}
.paywall-badge{display:inline-block;padding:6px 12px;border-radius:999px;background:linear-gradient(135deg,var(--accent-2),var(--accent-3));color:var(--white);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.paywall-title{margin:16px 0 8px;font-size:2rem;color:var(--ink)}
.paywall-plan{margin:6px 0 10px;color:var(--gray-700);font-weight:600}
.paywall-copy{color:var(--gray-600);margin-bottom:18px}
.paywall-actions{display:flex;gap:12px;flex-wrap:wrap}
.paywall-actions .reading-button{padding:12px 28px}
.paywall-cancel{padding:12px 22px;border-radius:12px;border:1px solid var(--gray-200);background:var(--gray-50);color:var(--gray-700);font-weight:600;transition:var(--transition)}
.paywall-cancel:hover{background:var(--gray-100);transform:translateY(-1px)}
.paywall-note{margin-top:16px;color:var(--gray-600);font-size:.85rem}
@media (max-width:640px){
  .paywall-card{padding:28px 22px}
  .paywall-title{font-size:1.6rem}
}

.heyzine-overlay{position:fixed;inset:0;background:rgba(20,17,15,.7);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:65;padding:16px}
.heyzine-overlay.hidden{display:none}
.heyzine-card{background:var(--paper-2);border-radius:20px;box-shadow:var(--shadow-xl);width:min(1100px,96vw);height:min(80vh,900px);position:relative;overflow:hidden;border:1px solid rgba(27,21,18,.1)}
.heyzine-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;border:none;background:var(--gray-100);color:var(--gray-700);font-size:20px;cursor:pointer;transition:var(--transition);z-index:2}
.heyzine-close:hover{background:var(--gray-200);transform:scale(1.05)}
#heyzine-frame{width:100%;height:100%;border:0}
@media (max-width:640px){
  .heyzine-card{height:88vh}
}

