*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;background:#FFFDF9;color:#1A3D2B;overflow-x:hidden;}
nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 48px;height:64px;background:rgba(255,253,249,0.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(46,107,69,0.18);}
.nav-links{display:flex;gap:32px;list-style:none;flex:1;}
.nav-links a{font-family:'DM Sans',sans-serif;font-size:0.82rem;font-weight:500;letter-spacing:0.04em;text-transform:uppercase;color:#2E6B45;text-decoration:none;transition:color 0.2s;}
.nav-links a:hover{color:#C96B8A;}
.nav-logo{font-family:'Fraunces',serif;font-weight:700;font-size:1.15rem;color:#1A3D2B;text-decoration:none;letter-spacing:-0.01em;}
.nav-logo span{color:#4A9668;}
.nav-cta{display:flex;gap:24px;list-style:none;flex:1;justify-content:flex-end;}
.nav-cta a{font-family:'DM Sans',sans-serif;font-size:0.82rem;font-weight:500;letter-spacing:0.04em;text-transform:uppercase;color:#2E6B45;text-decoration:none;transition:color 0.2s;}
.nav-cta a:hover{color:#C96B8A;}
.nav-cta .nav-btn{background:#1A3D2B;color:#FFFDF9;padding:8px 18px;border-radius:100px;transition:background 0.2s,color 0.2s;}
.nav-cta .nav-btn:hover{background:#C96B8A;color:#fff;}
.nav-has-dropdown{position:relative;align-self:stretch;display:flex;align-items:center;}
.nav-dropdown{opacity:0;visibility:hidden;pointer-events:none;position:absolute;top:100%;padding-top:12px;right:0;min-width:185px;background:#FFFDF9;border:1px solid rgba(46,107,69,0.15);border-radius:10px;box-shadow:0 8px 28px rgba(26,61,43,0.14);padding:4px 0;overflow:hidden;z-index:300;}
.nav-dropdown,.nav-dropdown li{list-style:none !important;}
.nav-has-dropdown:hover .nav-dropdown{opacity:1;visibility:visible;pointer-events:auto;pointer-events:auto;transform:translateY(0);transition-delay:0s;}
nav .nav-cta .nav-has-dropdown .nav-dropdown li a{display:block;padding:9px 16px;font-size:0.83rem;font-weight:400;color:#1A3D2B !important;text-decoration:none !important;text-transform:none !important;letter-spacing:0 !important;transition:background 0.15s;}
nav .nav-cta .nav-has-dropdown .nav-dropdown li a:hover{background:#E8F3E6;color:#2E6B45 !important;}
.nav-dropdown li + li{border-top:1px solid rgba(46,107,69,0.08);}
#hero{position:relative;width:100%;height:100vh;min-height:600px;background:#1A3D2B;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;}
.hero-kanji{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:clamp(260px,40vw,560px);color:rgba(255,255,255,0.045);font-family:serif;line-height:1;pointer-events:none;user-select:none;animation:kanjiDrift 20s ease-in-out infinite;z-index:0;}
@keyframes kanjiDrift{0%{transform:translate(-50%,-50%) scale(1) rotate(0deg);}
33%{transform:translate(-50%,-52%) scale(1.04) rotate(1.5deg);}
66%{transform:translate(-50%,-48%) scale(0.97) rotate(-1deg);}
100%{transform:translate(-50%,-50%) scale(1) rotate(0deg);}
}
.hero-bg-circle{position:absolute;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle at 40% 40%,rgba(74,150,104,0.12) 0%,transparent 70%);top:-100px;right:-150px;pointer-events:none;z-index:0;}
.hero-content{position:relative;z-index:1;text-align:center;padding:0 24px;}
.hero-eyebrow{font-family:'DM Sans',sans-serif;font-size:0.72rem;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:rgba(255,253,249,0.5);margin-bottom:28px;}
.hero-headline{font-family:'Fraunces',serif;font-weight:900;font-size:clamp(3.2rem,8vw,6.5rem);line-height:1;color:#FFFDF9;letter-spacing:-0.02em;}
.hero-headline-italic{font-family:'Fraunces',serif;font-weight:700;font-style:italic;font-size:clamp(2.6rem,7vw,5.4rem);line-height:1.05;color:#C96B8A;letter-spacing:-0.02em;display:block;margin-top:4px;}
.hero-description{margin-top:36px;font-size:0.97rem;line-height:1.75;color:rgba(255,253,249,0.62);max-width:420px;margin-left:auto;margin-right:auto;font-weight:300;}
.hero-stats-strip{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:stretch;border-top:1px solid rgba(255,253,249,0.1);}
.hero-stat{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px 16px;gap:4px;}
.hero-stat + .hero-stat{border-left:1px solid rgba(255,253,249,0.1);}
.hero-stat-num{font-family:'Fraunces',serif;font-weight:700;font-size:1.7rem;color:#4A9668;line-height:1;}
.hero-stat-label{font-family:'DM Sans',sans-serif;font-size:0.72rem;font-weight:400;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,253,249,0.7);}
.scroll-indicator{position:absolute;bottom:80px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:2;}
.scroll-indicator-text{font-family:'DM Sans',sans-serif;font-size:0.68rem;font-weight:500;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,253,249,0.65);}
.scroll-arrow{width:1px;height:32px;background:linear-gradient(to bottom,rgba(255,253,249,0.35),transparent);animation:scrollPulse 2s ease-in-out infinite;}
@keyframes scrollPulse{0%,100%{transform:scaleY(1);opacity:0.35;}
50%{transform:scaleY(0.6);opacity:0.08;}
}
#numero-un{position:relative;width:100%;min-height:100vh;background:#FFFDF9;display:flex;flex-direction:column;align-items:stretch;overflow:hidden;}
.section2-inner{flex:1;display:grid;grid-template-columns:1fr 1.1fr 1fr;align-items:center;min-height:calc(100vh - 60px);padding:80px 64px;gap:48px;}
.section2-bg-number{position:absolute;top:50%;left:-2vw;transform:translateY(-50%);font-family:'Fraunces',serif;font-weight:900;font-size:clamp(180px,26vw,340px);line-height:1;color:#E8F3E6;pointer-events:none;user-select:none;z-index:0;animation:floatNum 8s ease-in-out infinite;}
@keyframes floatNum{0%,100%{transform:translateY(-50%) translateX(0);}
50%{transform:translateY(-52%) translateX(8px);}
}
.section2-content{position:relative;z-index:1;grid-column:2;display:flex;flex-direction:column;gap:20px;}
.section2-eyebrow{font-family:'DM Sans',sans-serif;font-size:0.72rem;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:#2E6B45;}
.section2-headline{font-family:'Fraunces',serif;font-weight:900;font-size:clamp(1.8rem,3.5vw,3rem);line-height:1.1;color:#1A3D2B;letter-spacing:-0.02em;}
.section2-desc{font-size:0.92rem;line-height:1.75;color:#4a6358;font-weight:300;max-width:380px;}
.score-badge{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;background:#C96B8A;font-family:'Fraunces',serif;font-weight:900;font-size:1.3rem;color:#fff;flex-shrink:0;box-shadow:0 8px 32px rgba(201,107,138,0.35);}
.score-row{display:flex;align-items:center;gap:20px;}
.score-label{font-size:0.8rem;font-weight:500;color:#2E6B45;letter-spacing:0.04em;}
.pros-list{list-style:none;display:flex;flex-direction:column;gap:8px;}
.pros-list li{font-size:0.88rem;color:#2E6B45;display:flex;align-items:center;gap:10px;font-weight:400;}
.pros-list li::before{content:'';display:block;width:6px;height:6px;border-radius:50%;background:#4A9668;flex-shrink:0;}
.btn-rose{display:inline-block;padding:14px 28px;background:#A14D6A;color:#fff;font-family:'DM Sans',sans-serif;font-size:0.84rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;text-decoration:none;border-radius:100px;border:none;cursor:pointer;transition:background 0.2s,transform 0.2s,box-shadow 0.2s;width:fit-content;box-shadow:0 4px 20px rgba(201,107,138,0.25);}
.btn-rose:hover{background:#8B3D5A;transform:translateY(-2px);box-shadow:0 8px 28px rgba(139,61,90,0.35);}
.section2-bowl-col{position:relative;z-index:1;grid-column:3;display:flex;align-items:center;justify-content:center;}
.matcha-bowl{position:relative;width:clamp(200px,22vw,300px);height:clamp(200px,22vw,300px);}
.matcha-bowl-outer{width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#3a7a55 0%,#1A3D2B 60%,#0f2418 100%);box-shadow:0 24px 64px rgba(26,61,43,0.35),inset 0 4px 20px rgba(255,255,255,0.06);display:flex;align-items:center;justify-content:center;}
.matcha-bowl-inner{width:72%;height:72%;border-radius:50%;background:radial-gradient(circle at 40% 35%,#5aab78 0%,#2E6B45 45%,#1d5035 100%);box-shadow:inset 0 6px 24px rgba(0,0,0,0.25);display:flex;align-items:center;justify-content:center;}
.matcha-bowl-foam{width:55%;height:55%;border-radius:50%;background:radial-gradient(circle at 45% 40%,rgba(200,240,210,0.55) 0%,rgba(74,150,104,0.2) 100%);}
.bowl-glow{position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);width:70%;height:30px;background:radial-gradient(ellipse,rgba(74,150,104,0.22) 0%,transparent 70%);pointer-events:none;}
.section2-tagline-strip{width:100%;background:#2E6B45;padding:18px 64px;font-family:'Fraunces',serif;font-style:italic;font-weight:400;font-size:1.05rem;color:rgba(255,253,249,0.82);text-align:center;letter-spacing:0.01em;}
#classement{width:100%;min-height:100vh;background:#E8F3E6;display:flex;align-items:stretch;overflow:hidden;}
.ranking-left{position:sticky;top:0;width:38%;min-height:100vh;height:100vh;display:flex;flex-direction:column;justify-content:center;padding:80px 48px 80px 64px;background:#E8F3E6;z-index:2;}
.ranking-left-eyebrow{font-family:'DM Sans',sans-serif;font-size:0.72rem;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:#2E6B45;margin-bottom:16px;}
.ranking-left-title{font-family:'Fraunces',serif;font-weight:900;font-size:clamp(5rem,10vw,9rem);line-height:0.95;color:#1A3D2B;letter-spacing:-0.03em;}
.ranking-left-subtitle{font-family:'Fraunces',serif;font-weight:300;font-style:italic;font-size:clamp(1.3rem,2.5vw,2rem);color:#2E6B45;margin-top:12px;}
.ranking-left-desc{margin-top:28px;font-size:0.88rem;line-height:1.7;color:#3d6050;font-weight:300;max-width:300px;border-top:1px solid rgba(46,107,69,0.2);padding-top:24px;}
.ranking-right{flex:1;overflow-y:auto;padding:80px 64px 80px 32px;display:flex;flex-direction:column;gap:20px;scroll-snap-type:y mandatory;}
.ranking-right::-webkit-scrollbar{width:3px;}
.ranking-right::-webkit-scrollbar-track{background:transparent;}
.ranking-right::-webkit-scrollbar-thumb{background:rgba(46,107,69,0.25);border-radius:2px;}
.rank-card{scroll-snap-align:start;background:#FFFDF9;border-radius:16px;padding:32px 36px;display:flex;align-items:center;gap:28px;border-left:3px solid transparent;transition:transform 0.25s,box-shadow 0.25s;min-height:140px;}
.rank-card:hover{transform:translateX(6px);box-shadow:0 8px 40px rgba(26,61,43,0.1);}
.rank-card.featured{border-left-color:#C96B8A;background:#FFFDF9;box-shadow:0 4px 30px rgba(201,107,138,0.12);}
.rank-number{font-family:'Fraunces',serif;font-weight:900;font-size:3.2rem;color:#C9D9C4;line-height:1;width:52px;flex-shrink:0;}
.rank-card.featured .rank-number{color:#C96B8A;font-size:3.8rem;}
.rank-info{flex:1;}
.rank-product-name{font-family:'Fraunces',serif;font-weight:700;font-size:1.2rem;color:#1A3D2B;margin-bottom:4px;letter-spacing:-0.01em;}
.rank-card.featured .rank-product-name{font-size:1.45rem;}
.rank-origin{font-size:0.78rem;font-weight:500;color:#3A7A50;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:10px;}
.rank-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px;}
.rank-tag{font-size:0.67rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;padding:3px 10px;border-radius:100px;background:#E8F3E6;color:#2E6B45;}
.rank-tag.rose{background:#FAE8EF;color:#8B3D5A;}
.rank-meta{font-size:0.8rem;color:#5a7a68;font-weight:300;}
.rank-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px;flex-shrink:0;}
.rank-score{width:52px;height:52px;border-radius:50%;background:#2E6B45;display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:900;font-size:0.95rem;color:#FFFDF9;}
.rank-card.featured .rank-score{width:58px;height:58px;background:#C96B8A;font-size:1rem;}
.rank-price{font-family:'DM Sans',sans-serif;font-size:0.82rem;font-weight:600;color:#1A3D2B;}
.rank-cta{font-size:0.75rem;font-weight:600;color:#A14D6A;text-decoration:none;letter-spacing:0.04em;text-transform:uppercase;transition:color 0.2s;}
.rank-cta:hover{color:#8B3D5A;}
#promo{position:relative;width:100%;min-height:80vh;background:#1A3D2B;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.promo-blob{position:absolute;border-radius:50%;background:rgba(74,150,104,0.12);pointer-events:none;}
.promo-blob-1{width:500px;height:500px;top:-180px;right:-80px;border-radius:60% 40% 55% 45% / 45% 55% 40% 60%;}
.promo-blob-2{width:320px;height:320px;bottom:-100px;left:5%;border-radius:50% 50% 40% 60% / 60% 40% 55% 45%;background:rgba(74,150,104,0.08);}
.promo-blob-3{width:180px;height:180px;top:30px;left:30%;border-radius:45% 55% 60% 40% / 55% 45% 60% 40%;background:rgba(201,107,138,0.07);}
.promo-content{position:relative;z-index:1;text-align:center;padding:80px 32px;display:flex;flex-direction:column;align-items:center;gap:20px;}
.promo-eyebrow{font-family:'DM Sans',sans-serif;font-size:0.72rem;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:#4A9668;}
.promo-headline{font-family:'Fraunces',serif;font-weight:900;font-size:clamp(2.2rem,5vw,4rem);color:#FFFDF9;letter-spacing:-0.02em;line-height:1.1;}
.promo-code-wrapper{display:flex;flex-direction:column;align-items:center;gap:12px;margin:8px 0;}
.promo-code-box{display:inline-block;padding:20px 52px;border:2px solid rgba(255,253,249,0.25);border-radius:12px;background:rgba(255,253,249,0.04);}
.promo-code-text{font-family:'Fraunces',serif;font-weight:900;font-size:clamp(2.8rem,8vw,6rem);color:#FFFDF9;letter-spacing:0.12em;line-height:1;}
.promo-discount{font-family:'DM Sans',sans-serif;font-size:0.92rem;color:rgba(255,253,249,0.55);font-weight:300;letter-spacing:0.04em;}
.btn-copy{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:#A14D6A;color:#fff;font-family:'DM Sans',sans-serif;font-size:0.84rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;border:none;border-radius:100px;cursor:pointer;transition:background 0.2s,transform 0.2s;box-shadow:0 4px 20px rgba(201,107,138,0.3);}
.btn-copy:hover{background:#8B3D5A;transform:translateY(-2px);}
.btn-copy.copied{background:#2E6B45;}
#guides{width:100%;min-height:100vh;background:#FFFDF9;display:flex;flex-direction:column;justify-content:center;padding:100px 64px;}
.guides-header{margin-bottom:56px;}
.guides-eyebrow{font-family:'DM Sans',sans-serif;font-size:0.72rem;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:#4A9668;margin-bottom:14px;}
.guides-headline{font-family:'Fraunces',serif;font-weight:900;font-size:clamp(2.2rem,5vw,4.2rem);color:#1A3D2B;letter-spacing:-0.025em;line-height:1.05;}
.guides-headline em{font-style:italic;color:#C96B8A;}
.blog-cards{display:flex;flex-direction:column;gap:16px;}
.blog-card{display:flex;align-items:stretch;border-radius:16px;overflow:hidden;min-height:160px;transition:transform 0.25s,box-shadow 0.25s;text-decoration:none;}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 16px 48px rgba(26,61,43,0.12);}
.blog-card-color{width:280px;flex-shrink:0;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}
.blog-card-color-label{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-family:'DM Sans',sans-serif;font-size:0.68rem;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.7);position:absolute;right:20px;bottom:24px;}
.blog-card-icon{font-size:3rem;position:relative;z-index:1;}
.blog-card-body{flex:1;padding:32px 40px;display:flex;flex-direction:column;justify-content:center;gap:10px;}
.blog-card-category{font-size:0.7rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;}
.blog-card-title{font-family:'Fraunces',serif;font-weight:700;font-size:1.35rem;line-height:1.25;letter-spacing:-0.01em;}
.blog-card-meta{font-size:0.75rem;font-weight:400;color:#5a6e63;}
.blog-card-desc{font-size:0.88rem;line-height:1.65;font-weight:300;color:#4a5e53;max-width:560px;}
.blog-card-link{font-size:0.82rem;font-weight:600;text-decoration:none;letter-spacing:0.04em;transition:opacity 0.2s;display:inline-flex;align-items:center;gap:6px;width:fit-content;margin-top:4px;}
.blog-card-link:hover{opacity:0.7;}
.blog-card:nth-child(1) .blog-card-color{background:linear-gradient(135deg,#2E6B45,#1A3D2B);}
.blog-card:nth-child(1) .blog-card-body{background:#E8F3E6;color:#1A3D2B;}
.blog-card:nth-child(1) .blog-card-category{color:#2E6B45;}
.blog-card:nth-child(1) .blog-card-link{color:#2E6B45;}
.blog-card:nth-child(2) .blog-card-color{background:linear-gradient(135deg,#C96B8A,#8B3D5A);}
.blog-card:nth-child(2) .blog-card-body{background:#FAE8EF;color:#1A3D2B;}
.blog-card:nth-child(2) .blog-card-category{color:#A14D6A;}
.blog-card:nth-child(2) .blog-card-link{color:#8B3D5A;}
.blog-card:nth-child(3) .blog-card-color{background:linear-gradient(135deg,#4A9668,#2E6B45);}
.blog-card:nth-child(3) .blog-card-body{background:#F2C0D0;color:#1A3D2B;}
.blog-card:nth-child(3) .blog-card-category{color:#8B3D5A;}
.blog-card:nth-child(3) .blog-card-link{color:#8B3D5A;}
footer{background:#1A3D2B;color:rgba(255,253,249,0.55);padding:72px 64px 48px;}
.footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;padding-bottom:48px;border-bottom:1px solid rgba(255,253,249,0.08);}
.footer-logo{font-family:'Fraunces',serif;font-weight:700;font-size:1.4rem;color:#FFFDF9;text-decoration:none;display:block;margin-bottom:16px;}
.footer-logo span{color:#4A9668;}
.footer-tagline{font-size:0.85rem;line-height:1.65;font-weight:300;max-width:240px;}
.footer-col-title{font-family:'DM Sans',sans-serif;font-size:0.7rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,253,249,0.65);margin-bottom:18px;}
.footer-col-links{list-style:none;display:flex;flex-direction:column;gap:10px;}
.footer-col-links a{font-size:0.88rem;color:rgba(255,253,249,0.62);text-decoration:none;font-weight:300;transition:color 0.2s;}
.footer-col-links a:hover{color:#FFFDF9;}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:28px;font-size:0.75rem;color:rgba(255,253,249,0.55);font-weight:300;}
.footer-bottom a{color:rgba(255,253,249,0.55);text-decoration:none;}
.footer-bottom a:hover{color:rgba(255,253,249,0.65);}
@media (max-width:900px){nav{padding:0 20px;}
.nav-links,.nav-cta{display:none;}
.hero-kanji{font-size:clamp(140px,60vw,260px);}
.hero-headline{font-size:clamp(2.4rem,10vw,4rem);}
.hero-headline-italic{font-size:clamp(1.9rem,8.5vw,3.2rem);}
.hero-description{font-size:0.88rem;}
.section2-inner{grid-template-columns:1fr;padding:80px 28px 0;min-height:auto;}
.section2-bg-number{font-size:38vw;left:-8vw;top:80px;transform:none;animation:none;}
.section2-content{grid-column:1;padding-top:40px;}
.section2-bowl-col{grid-column:1;margin-top:-20px;margin-bottom:20px;}
.matcha-bowl{width:160px;height:160px;}
.section2-tagline-strip{padding:18px 24px;font-size:0.9rem;}
#classement{flex-direction:column;}
.ranking-left{position:static;width:100%;min-height:auto;height:auto;padding:80px 28px 40px;}
.ranking-left-title{font-size:clamp(4rem,18vw,6rem);}
.ranking-right{padding:20px 24px 60px;overflow:visible;scroll-snap-type:none;}
.rank-card{padding:24px 20px;gap:16px;}
#guides{padding:80px 28px;}
.blog-card{flex-direction:column;}
.blog-card-color{width:100%;height:110px;}
.blog-card-body{padding:24px;}
.footer-inner{grid-template-columns:1fr 1fr;gap:36px;}
footer{padding:52px 28px 36px;}
.footer-bottom{flex-direction:column;gap:8px;text-align:center;}
}
#bienfaits{background:#f4faf7;padding:5rem 2rem;}
.bienfaits-inner{max-width:960px;margin:0 auto;}
.bienfaits-eyebrow{text-align:center;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#2E6B45;margin-bottom:.5rem;}
.bienfaits-headline{font-family:'DM Serif Display',Georgia,serif;font-size:2.25rem;color:#1A3D2B;text-align:center;margin-bottom:.75rem;line-height:1.15;}
.bienfaits-headline em{font-style:italic;color:#2E6B45;}
.bienfaits-lead{color:#4F6259;font-size:1rem;text-align:center;max-width:580px;margin:0 auto 2.75rem;line-height:1.65;}
.bienfait-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:3rem;}
.bienfait-card{background:#fff;border:1.5px solid #E2EDE7;border-radius:16px;padding:1.5rem 1.25rem;box-shadow:0 2px 8px rgba(26,61,43,.06);transition:.25s;}
.bienfait-card:hover{transform:translateY(-3px);box-shadow:0 6px 24px rgba(26,61,43,.12);}
.bienfait-icon{font-size:1.75rem;margin-bottom:.7rem;display:block;}
.bienfait-card h3{font-family:'DM Sans',sans-serif;font-size:.95rem;font-weight:700;color:#1A3D2B;margin:0 0 .5rem;}
.bienfait-card p{font-size:.84rem;color:#4F6259;line-height:1.6;margin:0;}
.bienfaits-regions{margin-top:.5rem;}
.regions-title{font-family:'DM Serif Display',Georgia,serif;font-size:1.5rem;color:#1A3D2B;text-align:center;margin-bottom:1.25rem;}
.regions-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;}
.region-card{background:#fff;border:1.5px solid #E2EDE7;border-radius:12px;padding:1.1rem 1.2rem;}
.region-card strong{color:#1A3D2B;font-size:.92rem;display:block;margin-bottom:.3rem;}
.region-card span{color:#4F6259;font-size:.82rem;line-height:1.55;}
@media (max-width:900px){.bienfait-grid{grid-template-columns:repeat(2,1fr);}
.regions-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:600px){#bienfaits{padding:3rem 1.25rem;}
.bienfaits-headline{font-size:1.75rem;}
.bienfait-grid,.regions-grid{grid-template-columns:1fr;}
}
#grades{background:#fff;padding:5rem 2rem;}
.grades-inner{max-width:960px;margin:0 auto;}
.grades-eyebrow{text-align:center;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#2E6B45;margin-bottom:.5rem;}
.grades-headline{font-family:'Fraunces',serif;font-size:2.25rem;font-weight:700;color:#1A3D2B;text-align:center;margin-bottom:.75rem;line-height:1.15;}
.grades-headline em{font-style:italic;color:#2E6B45;font-weight:400;}
.grades-lead{color:#4F6259;font-size:1rem;text-align:center;max-width:560px;margin:0 auto 2.75rem;line-height:1.65;}
.grades-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:2rem;}
.grade-card{background:#f4faf7;border:1.5px solid #E2EDE7;border-radius:20px;padding:2rem 1.5rem;display:flex;flex-direction:column;gap:.75rem;}
.grade-card.grade-best{background:#1A3D2B;border-color:#1A3D2B;}
.grade-badge{display:inline-flex;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:.25rem .75rem;border-radius:20px;align-self:flex-start;background:rgba(46,107,69,.15);color:#2E6B45;}
.grade-best .grade-badge{background:rgba(255,255,255,.15);color:rgba(255,255,255,.85);}
.grade-card h3{font-family:'Fraunces',serif;font-size:1.4rem;font-weight:700;color:#1A3D2B;margin:0;}
.grade-best h3{color:#fff;}
.grade-usage{font-size:.82rem;color:#4F6259;font-style:italic;padding:.4rem .75rem;background:rgba(46,107,69,.08);border-radius:8px;border-left:3px solid #4A9668;}
.grade-best .grade-usage{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.4);color:rgba(255,255,255,.7);}
.grade-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.45rem;flex:1;}
.grade-list li{font-size:.86rem;color:#374840;padding-left:1.25rem;position:relative;}
.grade-list li::before{content:'✓';position:absolute;left:0;color:#4A9668;font-weight:700;font-size:.78rem;}
.grade-best .grade-list li{color:rgba(255,255,255,.82);}
.grade-best .grade-list li::before{color:#7DD3A8;}
.grade-price-tag{font-family:'Fraunces',serif;font-size:1.2rem;font-weight:700;color:#1A3D2B;padding-top:.5rem;border-top:1px solid #E2EDE7;}
.grade-best .grade-price-tag{color:#C96B8A;border-color:rgba(255,255,255,.15);}
.grade-verdict{font-size:.76rem;color:#4F6259;font-style:italic;}
.grade-best .grade-verdict{color:rgba(255,255,255,.55);}
.grades-tip{display:flex;gap:1rem;align-items:flex-start;background:#f4faf7;border:1.5px solid #c8e6d4;border-radius:14px;padding:1.25rem 1.5rem;}
.grades-tip-icon{font-size:1.5rem;flex-shrink:0;}
.grades-tip p{font-size:.9rem;color:#374840;line-height:1.65;margin:0;}
.grades-tip strong{color:#1A3D2B;}
#faq{background:#f4faf7;padding:5rem 2rem;}
.faq-inner{max-width:760px;margin:0 auto;}
.faq-eyebrow{text-align:center;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#2E6B45;margin-bottom:.5rem;}
.faq-headline{font-family:'Fraunces',serif;font-size:2rem;font-weight:700;color:#1A3D2B;text-align:center;margin-bottom:2.5rem;line-height:1.2;}
.faq-list{display:flex;flex-direction:column;gap:.85rem;}
.faq-item{background:#fff;border:1.5px solid #E2EDE7;border-radius:16px;padding:1.5rem 1.75rem;transition:.2s;}
.faq-item:hover{box-shadow:0 4px 16px rgba(26,61,43,.08);}
.faq-item h3{font-family:'DM Sans',sans-serif;font-size:.98rem;font-weight:700;color:#1A3D2B;margin:0 0 .65rem;line-height:1.4;}
.faq-item p{font-size:.88rem;color:#5a7a6a;line-height:1.7;margin:0;}
.faq-item strong{color:#1A3D2B;}
@media (max-width:900px){.grades-grid{grid-template-columns:1fr;gap:1rem;}
.grade-card.grade-best{order:-1;}
}
@media (max-width:600px){#grades,#faq{padding:3rem 1.25rem;}
.grades-headline,.faq-headline{font-size:1.7rem;}
}
.section2-scorecard{background:#fff;border:1.5px solid #E2EDE7;border-radius:24px;padding:1.75rem 1.5rem;box-shadow:0 8px 32px rgba(26,61,43,.10);display:flex;flex-direction:column;gap:1.25rem;min-width:280px;max-width:320px;}
.sc-header{text-align:center;}
.sc-eyebrow{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#2E6B45;margin-bottom:.5rem;}
.sc-score-big{font-family:'Fraunces',serif;font-size:3.5rem;font-weight:700;color:#1A3D2B;line-height:1;}
.sc-score-big span{font-size:1.2rem;color:#4F6259;font-weight:400;}
.sc-coeur{display:inline-flex;margin-top:.5rem;background:#1A3D2B;color:#fff;font-size:.75rem;font-weight:700;padding:.3rem .9rem;border-radius:20px;}
.sc-criteria{display:flex;flex-direction:column;gap:.55rem;}
.sc-row{display:grid;grid-template-columns:1.2rem 4.5rem 1fr 2.2rem;align-items:center;gap:.5rem;}
.sc-icon{font-size:.9rem;}
.sc-name{font-size:.78rem;color:#374840;font-weight:600;}
.sc-bar{background:#E2EDE7;border-radius:99px;height:6px;overflow:hidden;}
.sc-fill{height:100%;background:linear-gradient(90deg,#1A3D2B,#4A9668);border-radius:99px;}
.sc-val{font-size:.78rem;font-weight:700;color:#2E6B45;text-align:right;}
.sc-avis-link{display:block;text-align:center;font-size:.82rem;font-weight:700;color:#2E6B45;text-decoration:none;padding:.6rem 1rem;border:1.5px solid #c8e6d4;border-radius:10px;transition:.2s;}
.sc-avis-link:hover{background:#f4faf7;}
@media (max-width:768px){.grades-grid{grid-template-columns:repeat(2,1fr) !important;gap:.75rem !important;}
.rank-card{flex-wrap:wrap;padding:20px 16px;gap:12px;}
.rank-number{font-size:2.2rem;width:36px;}
.rank-card.featured .rank-number{font-size:2.6rem;}
.rank-info{min-width:0;flex:1;}
.rank-right{flex-direction:row;align-items:center;width:100%;gap:12px;justify-content:flex-start;border-top:1px solid #E2EDE7;padding-top:10px;margin-top:4px;}
.rank-score{width:40px;height:40px;font-size:.85rem;}
.rank-card.featured .rank-score{width:44px;height:44px;font-size:.9rem;}
#promo{min-height:60vh;}
.promo-content{padding:50px 20px;gap:16px;}
.promo-code-box{padding:14px 28px;}
.promo-code-text{font-size:clamp(2rem,10vw,3.5rem) !important;letter-spacing:.08em;}
.promo-headline{font-size:clamp(1.8rem,6vw,3rem) !important;}
.section2-scorecard{min-width:auto;max-width:100%;}
.blog-card-color{height:90px;}
}
@media (max-width:480px){.grades-grid{grid-template-columns:1fr !important;gap:.6rem !important;}
.grade-card{padding:1rem;}
.grade-badge{font-size:.65rem;padding:.25rem .6rem;}
.grade-card h3{font-size:.95rem !important;}
.grade-usage{font-size:.78rem;}
.grade-list li{font-size:.82rem;}
.rank-card{padding:16px 12px;gap:10px;}
.rank-number{font-size:1.8rem;width:30px;}
.rank-card.featured .rank-number{font-size:2.2rem;}
.rank-product-name{font-size:1rem;}
.rank-card.featured .rank-product-name{font-size:1.15rem;}
.rank-origin{font-size:.7rem;margin-bottom:6px;}
.rank-tag{font-size:.6rem;padding:2px 7px;}
.rank-meta{font-size:.72rem;}
.rank-score{width:36px;height:36px;font-size:.8rem;}
.rank-card.featured .rank-score{width:40px;height:40px;}
.rank-price{font-size:.78rem;}
.rank-cta{font-size:.7rem;}
#promo{min-height:auto;}
.promo-content{padding:40px 16px;gap:12px;}
.promo-headline{font-size:1.6rem !important;}
.promo-code-box{padding:10px 20px;}
.promo-code-text{font-size:2rem !important;letter-spacing:.06em;}
.promo-discount{font-size:.82rem;}
.btn-copy{padding:10px 20px;font-size:.8rem;}
.promo-link{font-size:.82rem;}
.hero-kanji{font-size:clamp(100px,45vw,180px) !important;}
.hero-headline{font-size:clamp(2rem,9vw,3rem) !important;}
.hero-headline-italic{font-size:clamp(1.5rem,7vw,2.2rem) !important;}
.hero-description{font-size:.84rem;max-width:100%;}
.hero-cta{padding:10px 22px;font-size:.85rem;}
.section2-inner{padding:50px 16px 0 !important;}
.section2-scorecard{padding:1.25rem 1rem;}
.sc-score-big{font-size:2.5rem;}
.sc-row{grid-template-columns:1rem 3.5rem 1fr 1.8rem;gap:.35rem;}
.sc-name{font-size:.72rem;}
.bienfait-grid{grid-template-columns:1fr 1fr !important;gap:.75rem;}
.bienfait-card{padding:1rem .85rem;}
.bienfaits-headline{font-size:1.5rem;}
#guides{padding:50px 16px !important;}
.guides-headline{font-size:1.5rem;}
.faq-grid{grid-template-columns:1fr !important;}
.faq-item{padding:1rem;}
.footer-inner{grid-template-columns:1fr !important;gap:20px;}
footer{padding:36px 16px 24px !important;}
}
