.expressions-hub{--exp-ink:#17201b;--exp-ink-soft:#48534c;--exp-paper:#fffdf8;--exp-mist:#e8eee8;--exp-green:#245846;--exp-green-dark:#163f31;--exp-brick:#c8442b;--exp-gold:#d5a437;--exp-line:rgba(23,32,27,.14);color:var(--exp-ink)}
.expressions-hub .content{max-width:1240px}
.exp-hero{position:relative;overflow:hidden;margin:20px 0 16px;padding:clamp(22px,4vw,52px);border:1px solid var(--exp-line);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(249,250,244,.9)),repeating-linear-gradient(0deg,transparent 0 31px,rgba(36,88,70,.055) 31px 32px),var(--exp-paper);box-shadow:0 18px 50px -38px rgba(23,32,27,.55)}
.exp-hero:before{content:"";position:absolute;top:-100px;right:-40px;width:360px;height:360px;border:58px solid rgba(36,88,70,.055);border-radius:50%;pointer-events:none}
.exp-hero .breadcrumb{margin:0 0 clamp(28px,5vw,54px);padding:0}
.exp-hero-layout{position:relative;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:clamp(36px,7vw,84px);align-items:center}
.exp-kicker,.exp-overline{margin:0 0 12px;color:var(--exp-brick);font-family:var(--font-display);font-size:.75rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.exp-hero h1{max-width:790px;margin:0 0 20px;color:var(--exp-ink);font-size:clamp(2.4rem,5.7vw,5rem);line-height:.94;letter-spacing:-.055em}
.exp-hero h1 span{display:block;margin-top:12px;color:var(--exp-green);font-family:var(--font-letter);font-size:.56em;font-style:italic;font-weight:500;letter-spacing:-.025em;line-height:1.05}
.exp-lead{max-width:670px;margin:0 0 26px;color:var(--exp-ink-soft);font-size:clamp(1rem,1.5vw,1.16rem);line-height:1.7}
.exp-search{max-width:650px}.exp-search .searchbox,.exp-search .__wrapper{width:100%}
.exp-search .searchbox__input{width:100%;height:58px!important;padding:0 66px 0 22px!important;border:1.5px solid rgba(23,32,27,.28)!important;border-radius:12px!important;background:#fff!important;color:var(--exp-ink);font-size:1rem;box-shadow:0 8px 24px -18px rgba(23,32,27,.6)}
.exp-search .searchbox__input:focus{border-color:var(--exp-green)!important;box-shadow:0 0 0 4px rgba(36,88,70,.12)!important}
.exp-search .searchbox__submit{top:6px;right:6px;left:auto;width:46px!important;height:46px;border-radius:9px;background:var(--exp-green)}
.exp-search .searchbox__submit:before{height:46px}.exp-search .searchbox__submit:hover{background:var(--exp-green-dark)}.exp-search .searchbox__submit svg{width:18px;height:18px;fill:#fff}
.exp-hero-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:18px}
.exp-hero-links a{color:var(--exp-ink-soft);font-size:.86rem;font-weight:650;text-decoration:underline;text-decoration-color:rgba(200,68,43,.35);text-underline-offset:4px}
.exp-hero-links a:hover{color:var(--exp-brick);text-decoration-color:var(--exp-brick)}
.exp-note{position:relative;padding:34px 30px 28px;border:1px solid rgba(36,88,70,.24);border-radius:5px 18px 18px;background:#f2f6ee;box-shadow:14px 16px 0 rgba(36,88,70,.08);transform:rotate(1.2deg)}
.exp-note:before{content:"“";position:absolute;top:-30px;right:22px;color:rgba(36,88,70,.12);font-family:var(--font-letter);font-size:8rem;line-height:1}
.exp-note-label{display:inline-block;margin-bottom:22px;padding-bottom:6px;border-bottom:2px solid var(--exp-gold);color:var(--exp-green);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.exp-note blockquote{position:relative;margin:0 0 16px;color:var(--exp-ink);font-family:var(--font-letter);font-size:clamp(1.55rem,2.8vw,2.2rem);font-style:italic;font-weight:500;line-height:1.08}
.exp-note p{margin:0 0 18px;color:var(--exp-ink-soft);font-size:.93rem;line-height:1.6}.exp-note a,.exp-text-link{color:var(--exp-green);font-weight:750}.exp-note a:hover,.exp-text-link:hover{color:var(--exp-brick)}
.exp-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 clamp(34px,6vw,72px)}
.exp-paths>a{display:flex;align-items:center;gap:14px;min-height:84px;padding:16px 18px;border:1px solid var(--exp-line);border-radius:14px;background:rgba(255,255,255,.76);color:var(--exp-ink);box-shadow:0 5px 18px -17px rgba(23,32,27,.7);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.exp-paths>a:hover{border-color:rgba(36,88,70,.4);box-shadow:0 12px 28px -22px rgba(23,32,27,.8);transform:translateY(-2px)}
.exp-path-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;flex:none;border-radius:50%;background:var(--exp-mist);color:var(--exp-green);font-family:var(--font-letter);font-size:1.25rem;font-weight:700}
.exp-paths strong,.exp-paths small{display:block}.exp-paths strong{margin-bottom:2px;font-family:var(--font-display);font-size:.97rem}.exp-paths small{color:var(--exp-ink-soft);font-size:.79rem}
.exp-section{margin:0 0 clamp(34px,6vw,76px);scroll-margin-top:90px}.exp-section-heading{max-width:780px;margin-bottom:22px}.exp-section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;max-width:none}
.exp-section-heading h2{margin:0;color:var(--exp-ink);font-size:clamp(1.65rem,3.2vw,2.55rem);line-height:1.05;letter-spacing:-.035em}.exp-section-intro{max-width:780px;margin:-8px 0 26px;color:var(--exp-ink-soft);font-size:1rem}
.exp-intro{padding:clamp(26px,4vw,46px);border-left:5px solid var(--exp-green);border-radius:0 18px 18px 0;background:var(--exp-paper)}
.exp-intro-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:clamp(28px,6vw,72px);align-items:start}
.exp-intro-main{margin:0;color:var(--exp-ink-soft);font-family:var(--font-letter);font-size:clamp(1.2rem,2.3vw,1.62rem);line-height:1.55}
.exp-fiche-info{padding:20px 22px;border:1px solid rgba(36,88,70,.18);border-radius:12px;background:var(--exp-mist)}.exp-fiche-title{margin:0 0 10px;color:var(--exp-green);font-family:var(--font-display);font-size:.8rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.exp-fiche-info ul{margin:0;padding-left:19px;color:var(--exp-ink-soft)}.exp-fiche-info li+li{margin-top:7px}
.exp-theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.exp-theme{position:relative;min-height:180px;overflow:hidden;padding:22px;border:1px solid var(--exp-line);border-radius:16px;background:#fff;color:var(--exp-ink);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.exp-theme:after{content:"";position:absolute;right:-22px;bottom:-24px;width:95px;height:95px;border-radius:50%;background:var(--theme-color,var(--exp-mist));opacity:.55}.exp-theme:hover{border-color:rgba(36,88,70,.35);box-shadow:0 18px 32px -27px rgba(23,32,27,.9);color:var(--exp-green);transform:translateY(-4px)}
.exp-theme>span,.exp-theme strong,.exp-theme small{position:relative;z-index:1;display:block}.exp-theme>span{margin-bottom:28px;color:var(--exp-brick);font-family:var(--font-mono);font-size:.72rem;font-weight:700}.exp-theme strong{margin-bottom:8px;font-family:var(--font-display);font-size:1.12rem}.exp-theme small{max-width:25ch;color:var(--exp-ink-soft);font-size:.8rem;line-height:1.45}
.exp-theme-food{--theme-color:#ecd08f}.exp-theme-love{--theme-color:#eeb9b4}.exp-theme-animals{--theme-color:#a8c6a8}.exp-theme-money{--theme-color:#c8d6a2}.exp-theme-compare{--theme-color:#b9c9dd}.exp-theme-work{--theme-color:#d8c0a4}.exp-theme-history{--theme-color:#c9b8d6}.exp-theme-life{--theme-color:#b8c6bd}
.exp-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.exp-card{min-width:0;overflow:hidden;border:1px solid var(--exp-line);border-radius:16px;background:#fff;box-shadow:0 8px 22px -22px rgba(23,32,27,.8);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.exp-card:hover{border-color:rgba(36,88,70,.35);box-shadow:0 20px 38px -28px rgba(23,32,27,.9);transform:translateY(-4px)}
.exp-card-link{display:block;height:100%;color:var(--exp-ink)}.exp-card-image{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--exp-mist)}.exp-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.exp-card:hover img{transform:scale(1.035)}
.exp-card-body{display:flex;min-height:116px;padding:17px 18px 18px;flex-direction:column;justify-content:space-between}.exp-card-body strong{font-family:var(--font-letter);font-size:1.25rem;font-weight:600;line-height:1.2}.exp-card-body small{margin-top:16px;color:var(--exp-green);font-size:.76rem;font-weight:700}
.exp-center-action{margin-top:28px;text-align:center}.exp-primary-link{display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:11px 20px;border-radius:10px;background:var(--exp-green);color:#fff;font-weight:750}.exp-primary-link:visited{color:#fff}.exp-primary-link:hover{background:var(--exp-green-dark);color:#fff}
.exp-guide{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(30px,6vw,78px);padding:clamp(28px,5vw,54px);border-radius:22px;background:var(--exp-green-dark);color:rgba(255,255,255,.82)}.exp-guide h2{margin:0 0 22px;color:#fff;font-size:clamp(1.75rem,3.5vw,2.7rem);line-height:1.04}.exp-guide-copy p{line-height:1.75}.exp-guide-copy p:last-child{margin-bottom:0}.exp-guide-copy a{color:#fff;font-weight:700;text-decoration:underline;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:3px}
.exp-related{padding:24px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(255,255,255,.07)}.exp-related h3{margin:0 0 14px;color:#fff;font-size:1rem}.exp-related>a{display:grid;grid-template-columns:1fr auto;padding:12px 0;border-top:1px solid rgba(255,255,255,.14);color:#fff}.exp-related>a:first-of-type{border-top:0}.exp-related strong,.exp-related small{display:block}.exp-related small{margin-top:2px;color:rgba(255,255,255,.6)}.exp-related>a>span{grid-column:2;grid-row:1/3;align-self:center;transition:transform .18s ease}.exp-related>a:hover>span{transform:translateX(4px)}
.exp-faq{max-width:900px;margin-right:auto;margin-left:auto}.exp-faq-list{display:grid;gap:10px}.exp-faq-list details{border:1px solid var(--exp-line);border-radius:12px;background:#fff}.exp-faq-list details[open]{border-color:rgba(36,88,70,.36)}.exp-faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;color:var(--exp-ink);cursor:pointer;font-family:var(--font-display);font-size:1rem;font-weight:700;list-style:none}.exp-faq-list summary::-webkit-details-marker{display:none}.exp-faq-list summary:after{content:"+";color:var(--exp-brick);font-size:1.45rem;font-weight:400;line-height:1;transition:transform .2s ease}.exp-faq-list details[open] summary:after{transform:rotate(45deg)}.exp-faq-list details>div{padding:0 20px 18px;color:var(--exp-ink-soft);line-height:1.7}.exp-faq-list details a{color:var(--exp-green);font-weight:700}
@media(max-width:980px){.exp-hero-layout,.exp-intro-grid,.exp-guide{grid-template-columns:1fr}.exp-note{max-width:620px;transform:none}.exp-theme-grid,.exp-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.expressions-hub .content{padding-right:12px;padding-left:12px}.exp-hero{margin-top:10px;padding:20px 18px 28px;border-radius:18px}.exp-hero .breadcrumb{margin-bottom:28px}.exp-hero-layout{gap:34px}.exp-hero h1{font-size:clamp(2.25rem,13vw,3.3rem)}.exp-hero h1 span{font-size:.62em;line-height:1.08}.exp-note{padding:28px 22px 24px;box-shadow:8px 10px 0 rgba(36,88,70,.08)}.exp-paths{grid-template-columns:1fr;margin-bottom:42px}.exp-paths>a{min-height:74px}.exp-section-heading-row{align-items:flex-start;flex-direction:column}.exp-theme-grid,.exp-card-grid{grid-template-columns:1fr}.exp-theme{min-height:155px}.exp-theme>span{margin-bottom:18px}.exp-card-link{display:grid;grid-template-columns:116px minmax(0,1fr)}.exp-card-image{height:100%;min-height:128px;aspect-ratio:auto}.exp-card-body{min-height:128px;padding:16px}.exp-card-body strong{font-size:1.08rem}.exp-guide{padding:28px 20px;border-radius:18px}}
@media(prefers-reduced-motion:reduce){.exp-paths>a,.exp-theme,.exp-card,.exp-card-image img,.exp-related>a>span,.exp-faq-list summary:after{transition:none}.exp-paths>a:hover,.exp-theme:hover,.exp-card:hover,.exp-card:hover img{transform:none}}
@media print{.exp-paths,.exp-search,.exp-hero-links,.exp-card-grid,.exp-center-action,.exp-related,.exp-faq{display:none!important}.exp-hero,.exp-intro,.exp-guide{padding:16px;border:1px solid #bbb;background:#fff;box-shadow:none;color:#000}.exp-guide h2,.exp-guide-copy a{color:#000}}
