/* Passion Chocolat 2026 — Bootstrap 5.3.8 theme */
:root{--cocoa:#2d1c15;--cream:#faf7f0;--caramel:#dfae7d;--muted:#74685f;--bs-body-bg:var(--cream);--bs-body-color:var(--cocoa);--bs-secondary-color:var(--muted);--bs-border-color:#ded5c9;--bs-body-font-family:Arial,Helvetica,sans-serif;--bs-link-color:#754b2e;--bs-link-hover-color:#442916;--bs-border-radius:.25rem}
html{scroll-padding-top:100px}body{overflow-x:clip}::selection{background:#dfae7d;color:#281810}h1,h2,h3,.footer-title{font-family:Georgia,'Times New Roman',serif;font-weight:400}h2{font-size:clamp(2.8rem,4.7vw,4.6rem);line-height:1.06;letter-spacing:-.055em}h2 em,.footer-title em{color:#986843;font-weight:400}h3{font-size:1.9rem;letter-spacing:-.03em}p{line-height:1.8}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #a86b38!important;outline-offset:5px}.container{max-width:1240px;padding-inline:28px}.section-space{padding-block:112px}.eyebrow{font-size:.68rem;font-weight:600;letter-spacing:.19em;text-transform:uppercase;margin-bottom:28px;line-height:1.5}.letter-spacing{letter-spacing:.15em}.reading-width{max-width:475px}.lead{font-size:1.24rem;line-height:1.6}.text-link{text-decoration:none;border-bottom:1px solid #ad947f;padding-bottom:9px;font-size:.85rem;font-weight:600;color:var(--cocoa)}.skip-link{position:fixed;top:10px;left:10px;background:var(--cream);padding:12px;z-index:1100}
.navbar{padding-block:22px;transition:background .25s,padding .25s;border-bottom:1px solid #ffffff25}.navbar.scrolled{background:#281810f5;padding-block:12px;backdrop-filter:blur(16px)}.navbar-brand{position:relative;flex:0 0 477px;width:477px;height:50px;margin-right:.5rem}.navbar-brand img{position:absolute;left:0;top:50%;display:block;width:auto;height:70px;max-width:none;transform:translateY(-50%);object-fit:contain}.navbar .nav-link{font-size:.9rem;color:#fffdf5cb;padding-block:12px}.navbar .nav-link:hover,.navbar .nav-link.active{color:var(--caramel)}.navbar .btn{font-size:.72rem}.offcanvas{background:#281810;color:var(--cream)}
.hero{min-height:780px;height:100svh;max-height:1300px;background:#20150f;color:var(--cream);overflow:hidden}.hero-video,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(22,12,6,.76),rgba(22,12,6,.27)),linear-gradient(0deg,rgba(22,12,6,.5),transparent 35%)}.hero-content{padding-top:100px;padding-bottom:100px}.hero-eyebrow{display:flex;align-items:center;gap:15px;color:#ecd2b6;margin-bottom:30px}.small-star{font-size:1.4rem}.hero h1{font-size:clamp(4.8rem,8.7vw,9rem);line-height:.94;letter-spacing:-.065em;margin-left:-5px}.hero h1 em{color:#eac7a4}.hero-date{font-size:1.14rem;letter-spacing:.01em}.hero-location{font-size:.8rem;border-left:1px solid #ffffff50;padding-left:24px;color:#e5d9ce}.btn-caramel{--bs-btn-bg:var(--caramel);--bs-btn-border-color:var(--caramel);--bs-btn-color:#281810;--bs-btn-hover-bg:#f0c79d;--bs-btn-hover-border-color:#f0c79d;--bs-btn-active-bg:#f0c79d;font-size:.8rem;font-weight:600}.hero-bottom{position:absolute;bottom:28px;left:50%;transform:translateX(-50%)}.hero-bottom>span{font-size:.6rem;color:#e6d8cb}.video-toggle{border:1px solid #ffffff60;color:#fff;width:42px;height:42px}.video-toggle:hover{background:#ffffff25;color:#fff}.hero-edition{position:absolute;right:28px;top:50%;writing-mode:vertical-rl;font-size:.55rem;letter-spacing:.23em;color:#e6d8cb}
.chocolate-composition{margin-left:40px;height:570px}.intro-photo{width:100%;height:100%;object-fit:cover;border-radius:46% 46% 3px 3px}.chocolate-composition:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#20120bc9,transparent 65%);border-radius:46% 46% 3px 3px}.photo-caption{position:absolute;z-index:1;bottom:38px;left:38px;color:#fff0df;font-family:Georgia,serif;font-size:2rem;line-height:1.15}.photo-caption em{display:block;font-size:3.5rem}.round-seal{position:absolute;z-index:2;left:-44px;top:55%;width:110px;height:110px;border-radius:50%;background:var(--caramel);outline:1px solid #2d1c1550;outline-offset:-8px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;transform:rotate(-12deg)}.round-seal span{font-size:.5rem;letter-spacing:.13em}.round-seal i{font-size:1.6rem}
.highlights{background:#eee6da}.coming-soon{border-block:1px solid #cebdac;padding-block:38px}.coming-symbol{font-size:5rem;font-weight:200;color:#906543;line-height:1}.badge-cocoa{background:#e4d6c4;color:#614632;font-size:.64rem;font-weight:500;padding:8px 13px}.coming-soon h3{font-size:1.8rem}.coming-soon p{font-size:.88rem}.edition-number{font-family:Georgia,serif;font-size:7rem;letter-spacing:-.06em;color:#d4c3af;line-height:1}.programme-shell{max-width:920px;border:1px solid var(--bs-border-color)}.programme-shell .nav-tabs{border:0}.programme-shell .nav-link{border:0;border-bottom:1px solid var(--bs-border-color);border-radius:0;background:#f0e9df;color:#736455;width:100%;padding:24px 10px;display:flex;flex-direction:column;align-items:center;gap:2px}.programme-shell .nav-item+.nav-item{border-left:1px solid var(--bs-border-color)}.programme-shell .nav-link span{font-size:.7rem}.programme-shell .nav-link strong{font-family:Georgia,serif;font-weight:400;font-size:2.7rem;line-height:1.1}.programme-shell .nav-link.active{background:var(--cocoa);color:var(--cream)}.programme-shell .tab-content{min-height:345px}.tab-pane>i{color:#986843}.tab-pane .eyebrow{margin-bottom:14px}.tab-pane h3{font-size:2rem}.tab-pane p:last-child{font-size:.86rem}
.video-section{background:#eee6da}.video-card{background:transparent}.video-cover{overflow:hidden;background:var(--cocoa);color:var(--cream);width:100%}.video-cover img{transition:transform .6s;filter:brightness(.8)}.video-cover:hover img{transform:scale(1.045)}.video-tag{position:absolute;bottom:15px;left:16px;font-size:.62rem;letter-spacing:.05em;color:#fff}.play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:49px;height:49px;border:1px solid #ffffffa0;border-radius:50%;display:grid;place-items:center;background:#24170e45;backdrop-filter:blur(4px);font-size:1.4rem;transition:background .25s}.video-cover:hover .play-icon{background:var(--caramel);color:var(--cocoa)}.video-card h3{font-size:1.23rem;line-height:1.3}.video-card .small{font-size:.72rem}.video-art{background:radial-gradient(ellipse at top right,#8c6444,transparent 75%),#39251a;display:flex;justify-content:center;align-items:center;gap:22px;padding-bottom:16px}.video-art>i{font-size:2.4rem;opacity:.65}.video-art>span{font-family:Georgia,serif;font-size:2.2rem;line-height:1;color:#e7cfb4}.art-3,.art-5{background:radial-gradient(ellipse at bottom left,#92704d,transparent 80%),#523b2b}.logo-tile{height:140px;display:flex;justify-content:center;align-items:center;padding:22px;background:#fff;border:1px solid #ece5db;transition:border-color .25s,transform .25s;color:#554233;font-family:Georgia,serif;font-size:1.05rem}.logo-tile img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.logo-tile[href]:hover{transform:translateY(-4px);border-color:#b39068}.archive-note{color:#835a38}.partner-title{font-size:2.4rem}.partners-section .logo-tile{border:0;background:transparent;height:120px}.footer{background:#281810;color:var(--cream)}.footer .eyebrow{color:var(--caramel)}.footer-title{font-size:clamp(3rem,5vw,4.8rem);line-height:1.05;letter-spacing:-.05em;margin:0}.footer-title em{color:#dbaf82}.footer-muted{color:#c1b1a1;font-size:.9rem}.footer .btn{font-size:.75rem}.footer-bottom{border-top:1px solid #ffffff25;color:#bcae9f;font-size:.65rem!important}.footer-bottom a{color:#bcae9f;text-decoration:none}.footer-bottom a:hover{color:white}.modal-content{border:0}.modal-title{font-family:Arial,sans-serif;letter-spacing:0}.modal-footer{font-size:.75rem}
@media(min-width:1400px){.container{max-width:1300px}}
@media(max-width:1199.98px){.offcanvas-body .nav-link{font-size:1.1rem;padding:15px 0}.offcanvas-body .btn{margin-top:25px}.hero{min-height:740px}.chocolate-composition{height:500px}}
@media(max-width:1199.98px){.navbar-brand{flex-basis:300px;width:300px}.navbar-brand img{height:56px}}
@media(max-width:767.98px){.container{padding-inline:24px}.section-space{padding-block:72px}.navbar{padding-block:13px}.navbar-brand{flex:0 0 210px;width:210px;height:42px;margin-right:0}.navbar-brand img{position:relative;top:-15px;display:block;width:100%;height:auto;max-width:100%;transform:none}.hero{min-height:700px;max-height:950px}.hero h1{font-size:clamp(4.1rem,14.8vw,7rem)}.hero-content{padding-top:120px}.hero-eyebrow{font-size:.57rem;letter-spacing:.15em}.hero-location{border-left:0;padding-left:0;width:100%;font-size:.75rem}.hero-date{font-size:1.1rem}.hero .btn-caramel{margin-top:30px!important}.hero-bottom{bottom:23px}.chocolate-composition{margin-left:20px;height:440px;margin-top:5px}.round-seal{left:-20px;top:55%;width:95px;height:95px}.photo-caption{left:27px}.coming-soon{align-items:start;position:relative}.coming-symbol{font-size:3.5rem}.edition-number{position:absolute;right:0;top:30px;font-size:4rem}.coming-soon h3{font-size:1.6rem}.eyebrow{margin-bottom:22px}.programme-shell .nav-link{padding:20px 5px}.programme-shell .nav-link strong{font-size:2.3rem}.tab-pane h3{font-size:1.7rem}.logo-tile{height:120px;padding:17px}.partner-title{font-size:2rem}.footer-title{font-size:3.3rem}.restaurant-section{padding-top:28px;padding-bottom:28px}.restaurant-section>.container{padding-top:24px}.restaurant-image-wrap{min-height:250px}.restaurant-copy{padding:36px 28px}.restaurant-ribbon{top:18px;left:18px;font-size:.88rem;padding:10px 15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{transition:none!important;animation:none!important}.hero-video{object-fit:cover}}
.intro-photo{object-position:left center}
/* Keep the archived poster's date block outside the presentation crop. */
@media(max-width:991.98px){.chocolate-composition{max-width:470px;height:500px;margin-inline:auto}}
@media(max-width:767.98px){.chocolate-composition{max-width:410px;height:440px;margin-left:20px}}

/* Practical information: a cocoa panel and native Bootstrap cards. */
.visit-panel{margin-top:88px;background:radial-gradient(ellipse at top right,#65432b55,transparent 60%),#2d1c15;color:var(--cream);overflow:hidden;scroll-margin-top:22px}
.visit-heading .eyebrow{color:#dfae7d;font-size:.61rem}
.visit-heading h2{font-size:clamp(2.5rem,4.1vw,3.8rem)}
.visit-heading h2 em{color:#e3b88e}
.visit-date{font-size:1.1rem}.visit-date>i{color:#dfae7d;font-size:1.4rem}.visit-date strong{font-weight:400}
.visit-location{color:#d4c3b3;font-size:.84rem}
.visit-details{border-top:1px solid #ffffff24;padding-top:20px;max-width:390px}.visit-map{position:relative;border-radius:18px;overflow:hidden;background:transparent}.visit-map img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;opacity:.9;mix-blend-mode:screen}
.visit-reference{font-size:.72rem;color:#d4c3b3}.visit-reference .badge{background:#ffffff10;color:#e9c6a3;border:1px solid #d3ac7f40;font-weight:400;padding:8px 12px}
.visit-card{background:#faf7f0;color:var(--cocoa);border:1px solid #e8ded1;border-radius:3px;transition:transform .25s,box-shadow .25s}
.visit-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #120a0733}
.visit-icon{display:grid;place-items:center;width:68px;height:68px;margin-inline:0;border:2px solid #b98e6270;border-radius:50%;color:#8b512f;font-size:1.7rem;box-shadow:0 4px 12px #8b512f12}
.visit-category{font-size:.62rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#805b3e;margin-bottom:14px;text-align:left}
.visit-card h3{font-size:1.6rem;line-height:1.15;margin-bottom:0;min-height:59px}.visit-card h3 em{color:#986843;font-weight:400}.visit-card .visit-icon{flex:none}
.visit-card p:last-child{font-size:.8rem;line-height:1.8;color:#736355}.visit-card strong{font-weight:600;color:#4b3425}
.visit-card .visit-figure{font-size:2.65rem;letter-spacing:-.05em;line-height:1.4;white-space:nowrap}.visit-figure span{font-size:1.9rem}
.visit-card-price{background:#e8c7a2;border-color:#e8c7a2}.visit-card-price .visit-figure{font-size:3.5rem;line-height:1.06}
.visit-card-restaurant{background:#f3e9dc}.visit-card-restaurant .visit-icon{color:#8f5e3d}
.visit-bottom{border-top:1px solid #ffffff24;font-size:.72rem;color:#d4c3b3}.visit-bottom a{color:#eac7a4}.visit-bottom a:hover{color:white}
@media(min-width:1200px) and (max-width:1399.98px){.visit-card{padding-inline:1.15rem!important}.visit-card h3{font-size:1.42rem}.visit-card .visit-figure{font-size:2.35rem}.visit-card-price .visit-figure{font-size:3rem}.visit-card p:last-child{font-size:.72rem}}
@media(max-width:767.98px){.visit-panel{margin-top:56px}.visit-heading .eyebrow{max-width:230px;line-height:1.8}.visit-card h3{min-height:0}.visit-card .visit-figure{line-height:1.1}.visit-reference{line-height:1.7}}
@media(prefers-reduced-motion:reduce){.visit-card:hover{transform:none}}

.restaurant-section{padding-top:34px;padding-bottom:34px}.restaurant-section>.container{border-top:1px solid #ded2c4;padding-top:34px}.restaurant-card{overflow:hidden;background:#f2eadf;border:1px solid #d9cabb;box-shadow:0 18px 45px #3d281514}.restaurant-image-wrap{position:relative;height:100%;min-height:390px;overflow:hidden;background:#3a261b}.restaurant-image-wrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}.restaurant-card:hover .restaurant-image-wrap img{transform:scale(1.025)}.restaurant-ribbon{position:absolute;top:24px;left:24px;padding:12px 20px 10px;background:#b20f25;color:#fff;font-family:Arial,sans-serif;font-size:1.05rem;font-weight:800;line-height:1.05;text-transform:uppercase;letter-spacing:.04em;transform:rotate(-4deg);box-shadow:0 8px 18px #28181040}.restaurant-ribbon small{font-size:.62rem;letter-spacing:.08em}.restaurant-copy{height:100%;padding:50px clamp(30px,5vw,70px);color:var(--cocoa);display:flex;flex-direction:column;justify-content:center}.restaurant-copy .eyebrow{color:#8f5e3d;margin-bottom:20px}.restaurant-copy h2{font-size:clamp(2.3rem,4vw,4rem);margin-bottom:24px}.restaurant-copy h2 em{color:#986843}.restaurant-copy p{color:#6f6157;font-size:.95rem;line-height:1.75}.restaurant-copy strong{color:#3d2a20}.restaurant-note{color:#8f5e3d!important;font-weight:600;font-size:.85rem!important;border-top:1px solid #c9b7a4;padding-top:18px;margin-top:8px}.restaurant-facebook-link{color:#805b3e;font-size:.82rem;font-weight:600;text-decoration:none}.restaurant-facebook-link:hover{color:#5f3928;text-decoration:underline}

.cfa-feature{background:var(--cream);color:var(--cocoa);border:1px solid #d7c8b8;overflow:hidden;box-shadow:0 18px 40px #3d281514}
.highlight-feature{background:var(--cream);border:1px solid #d9cabb;box-shadow:0 20px 55px #3d28151a;overflow:hidden}
.highlight-story-row{display:flex;align-items:stretch}
.highlight-story-row+.highlight-story-row{border-top:1px solid #d9cabb}
.highlight-story-row-reverse{flex-direction:row-reverse}
.highlight-feature-photo,.highlight-feature-copy{flex:0 0 50%;width:50%}
.highlight-feature-photo{position:relative;min-height:580px;margin:0;background:#24150f;overflow:hidden}
.highlight-feature-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.highlight-story-row-first .highlight-feature-photo img{object-position:62% center}
.highlight-feature-photo img.highlight-poster{object-fit:cover;padding:0;background:transparent}
.highlight-photo-caption{position:absolute;left:22px;bottom:22px;padding:10px 14px;background:#281810e8;color:#f7eee2;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;border:1px solid #ffffff28}
.highlight-photo-caption i{color:#dfae7d}
.highlight-feature-copy{padding:clamp(32px,4.3vw,64px);align-self:center}
.highlight-feature-copy>.eyebrow{color:#986843;margin-bottom:18px}
.highlight-feature-copy h3{font-size:clamp(2.1rem,3.2vw,3.45rem);line-height:1.04;letter-spacing:-.045em;margin-bottom:28px}
.highlight-feature-copy h3 em{color:#986843;font-weight:400}
.highlight-article-text{max-width:680px}
.highlight-article-text p{font-size:.88rem;line-height:1.82;color:#695b50;margin-bottom:1.15rem}
.highlight-article-text p:first-child{font-family:Georgia,'Times New Roman',serif;font-size:1.08rem;line-height:1.65;color:#39271d}
.highlight-article-text .highlight-article-closing{margin-top:1.7rem;padding-top:1.1rem;border-top:1px solid #d9cabb;color:#986843;font-family:Georgia,'Times New Roman',serif;font-size:1.18rem;font-style:italic}
.highlight-shop-name{display:inline-block;color:#754629;font-size:1.12em;font-weight:700;text-decoration:underline;text-decoration-color:#dfae7d;text-decoration-thickness:2px;text-underline-offset:3px}
.highlight-upcoming-row{margin-top:28px}
.highlight-upcoming{height:100%;display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);background:#f8f3eb;border:1px solid #d9cabb;overflow:hidden;min-height:210px}
.highlight-upcoming-art{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;background:radial-gradient(ellipse at 60% 35%,#caa57f,#684630 75%);color:#f8f0e4}
.highlight-upcoming-art i{font-size:2rem}
.highlight-upcoming-art span{font-size:.58rem;letter-spacing:.18em;text-transform:uppercase}
.highlight-upcoming-art-alt{background:radial-gradient(ellipse at 35% 60%,#d3b391,#533829 78%)}
.highlight-upcoming>div{padding:26px 24px;align-self:center}
.highlight-upcoming .eyebrow{font-size:.56rem;color:#986843;margin-bottom:12px}
.highlight-upcoming h3{font-size:1.4rem;line-height:1.1;margin-bottom:12px}
.highlight-upcoming h3 em{color:#986843}
.highlight-upcoming p:last-child{font-size:.72rem;line-height:1.6;color:#74685f;margin-bottom:0}
.highlight-article-card{display:flex;flex-direction:column;min-height:0;background:#f8f3eb}
.highlight-article-card-image{position:relative;display:block;width:100%;height:290px;margin:0;overflow:hidden;background:#f8f3eb}
.highlight-article-card-image img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center top}
.highlight-article-card-image-compact{height:auto;aspect-ratio:851/600}
.highlight-photo-credit{position:absolute;right:12px;bottom:10px;padding:5px 10px;background:#4b2d1f;color:#fff;font-size:.58rem;font-weight:300;font-style:italic;letter-spacing:.02em;line-height:1.2;border-radius:7px}
.highlight-article-card-copy{padding:28px 30px 32px}
.highlight-article-card-copy .eyebrow{font-size:.62rem}
.highlight-article-card-copy h3{font-size:clamp(1.55rem,2vw,2rem);margin-bottom:16px}
.highlight-article-card-copy .highlight-article-card-intro{font-size:.84rem;line-height:1.75;color:#74685f;margin-bottom:20px}
.highlight-workshop-details{list-style:none;padding:16px 0 0;margin:0;border-top:1px solid #d9cabb;display:grid;gap:10px}
.highlight-workshop-details li{display:flex;align-items:flex-start;gap:11px;color:#59483d;font-size:.75rem;line-height:1.55}
.highlight-workshop-details i{flex:0 0 17px;color:#986843;font-size:.9rem}
.highlight-article-card-copy .highlight-workshop-note{font-size:.64rem;line-height:1.5;color:#8a7b6e;margin:14px 0 12px}
.highlight-workshop-link{color:#75472e;font-size:.72rem;font-weight:700;text-decoration:none}
.highlight-workshop-link:hover{text-decoration:underline}
.highlight-new-cards-row{margin-top:28px}
.highlight-article-card-compact .highlight-image-placeholder{height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#ecd0ae;background:radial-gradient(ellipse at 50% 38%,#78543b,#39251b 76%);letter-spacing:.15em;text-transform:uppercase}
.highlight-image-placeholder i{font-size:1.8rem;color:#d6a574}
.highlight-image-placeholder span{font-size:.58rem}
.highlight-new-cards-row>.col:nth-child(2) .highlight-image-placeholder{background:radial-gradient(ellipse at 70% 30%,#8b6547,#39251b 78%)}
.highlight-new-cards-row>.col:nth-child(3) .highlight-image-placeholder{background:radial-gradient(ellipse at 35% 65%,#71503c,#39251b 78%)}
.highlight-article-card-compact .highlight-article-card-copy{padding:24px 24px 30px}
.highlight-article-card-compact .highlight-article-card-copy h3{font-size:1.65rem;margin-bottom:15px}
.highlight-article-card-compact .highlight-article-text{max-width:none}
.highlight-article-card-compact .highlight-article-text p{font-size:.78rem;line-height:1.72;margin-bottom:0}
.highlight-article-card-compact .highlight-article-text p:first-child{font-family:inherit;font-size:.8rem;line-height:1.72;color:#695b50}
.highlight-profile-links a{display:inline-flex;align-items:center;gap:7px;color:#75472e;font-size:.7rem;font-weight:700;text-decoration:none;border-bottom:1px solid #d9cabb;padding-bottom:4px;transition:color .2s,border-color .2s}
.highlight-profile-links a:hover{color:#3d281d;border-color:#986843}
.cfa-feature-visual{position:relative;min-height:360px;background:radial-gradient(circle at 50% 42%,#f9f5ed 0 28%,transparent 29%),linear-gradient(145deg,#d9b56e,#a8844e);display:flex;align-items:center;justify-content:center;padding:32px}
.cfa-feature-visual img{width:min(72%,340px);height:auto;aspect-ratio:1;border-radius:50%;object-fit:cover;background:#faf7f0;border:8px solid #faf7f0;box-shadow:0 12px 24px #49321d2e;filter:none}
.cfa-feature-mark{position:absolute;top:24px;left:28px;display:flex;align-items:baseline;gap:8px;color:#51371f;text-transform:uppercase;letter-spacing:.13em;font-size:.56rem}.cfa-feature-mark strong{font-family:Georgia,serif;font-size:1.25rem;font-weight:400;letter-spacing:-.04em}
.cfa-feature-body{padding:48px 52px}.cfa-feature-body .eyebrow{color:#986843;margin-bottom:19px}.cfa-feature-body h3{font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.03;margin-bottom:23px}.cfa-feature-body h3 em{color:#986843}.cfa-kicker{font-weight:700;font-size:1.04rem;margin-bottom:15px}.cfa-feature-body>p:not(.eyebrow):not(.cfa-kicker){max-width:590px;color:#65574c;line-height:1.8}.cfa-socials{display:flex;gap:11px}.cfa-socials a{width:42px;height:42px;border:1px solid #b990684d;border-radius:50%;display:grid;place-items:center;color:#8b512f;text-decoration:none;font-size:1.08rem;transition:background .2s,color .2s,transform .2s}.cfa-socials a:hover{background:#8b512f;color:#fff;transform:translateY(-3px)}
@media(max-width:767.98px){.cfa-feature-visual{min-height:270px;padding:26px}.cfa-feature-visual img{width:min(65%,230px)}.cfa-feature-body{padding:34px 26px}.cfa-feature-body h3{font-size:2.35rem}.cfa-feature-mark{top:17px;left:20px}}
@media(max-width:991.98px){.highlight-feature-photo{min-height:560px}.highlight-feature-copy{padding:clamp(26px,4vw,42px)}.highlight-article-text{max-width:none}}
@media(max-width:767.98px){.highlight-story-row,.highlight-story-row-reverse{flex-direction:column}.highlight-feature-photo,.highlight-feature-copy{flex:0 0 auto;width:100%}.highlight-feature-photo{min-height:390px;height:390px}.highlight-story-row-first .highlight-feature-photo{height:460px}.highlight-photo-caption{left:15px;bottom:15px;font-size:.56rem}.highlight-feature-copy{padding:30px 24px}.highlight-feature-copy h3{font-size:2.3rem;margin-bottom:24px}.highlight-article-text p{font-size:.84rem;line-height:1.78}.highlight-article-text p:first-child{font-size:1.05rem}.highlight-upcoming{grid-template-columns:112px 1fr;min-height:180px}.highlight-upcoming>div{padding:20px 16px}.highlight-upcoming h3{font-size:1.2rem}}

/* Les exposants reprennent le format carré de l'ancien site pour une lecture immédiate des marques. */
#exposants .logo-tile{height:auto;aspect-ratio:1/1;padding:14px}
#exposants .logo-tile img{width:100%;height:100%;max-width:none;max-height:none}
@media(max-width:767.98px){#exposants .logo-tile{padding:10px}}
.exhibitor-text-tile{flex-direction:column;text-align:center;padding:18px 12px!important;justify-content:center;gap:0}
.exhibitor-icon{width:34px;height:34px;border:1px solid #b39068;border-radius:50%;display:grid;place-items:center;color:#986843;font-size:.95rem;margin-bottom:9px}
.exhibitor-name{font-family:Georgia,'Times New Roman',serif;font-size:.95rem;line-height:1.1;margin:0 0 10px;color:#493225}
.exhibitor-meta{font-family:Arial,Helvetica,sans-serif;font-size:.6rem;line-height:1.7;color:#78685a;margin:0}
.exhibitor-meta i{color:#986843}

.map-open-link{position:absolute;left:18px;bottom:18px;padding:9px 13px;background:#fff;color:var(--cocoa);font-size:.7rem;text-decoration:none;box-shadow:0 4px 14px #26170d2b}
.map-open-link:hover{color:#80512f}

/* Compensation visuelle des marges transparentes des trois premiers logos partenaires. */
#partenaires .row > .col:nth-child(1) .logo-tile img{transform:scale(1.35)}
#partenaires .row > .col:nth-child(2) .logo-tile img{transform:scale(1.65)}
#partenaires .row > .col:nth-child(3) .logo-tile img{transform:scale(1.3)}
@media(max-width:767.98px){
  #partenaires .row > .col:nth-child(1) .logo-tile img{transform:scale(1.2)}
  #partenaires .row > .col:nth-child(2) .logo-tile img{transform:scale(1.4)}
  #partenaires .row > .col:nth-child(3) .logo-tile img{transform:scale(1.15)}
}
#partenaires .row > .col:nth-child(1) .logo-tile img{transform:scale(1.22)}


.video-frame{background:var(--cocoa);overflow:hidden}
.video-frame .youtube_player{position:absolute;inset:0}
.video-frame iframe{width:100%;height:100%;border:0}
.video-label{font-size:.62rem;letter-spacing:.05em;text-transform:uppercase;color:#986843}

/* Video cards: the editorial caption sits in a cocoa panel under each player. */
.video-card{background:var(--cocoa);color:var(--cream);border-radius:0 0 14px 14px!important;overflow:hidden;transition:transform .25s,box-shadow .25s}
.video-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #24150e2b}
.video-card .video-frame{border-radius:0}
.video-card .card-body{padding:1.15rem 1.25rem 1.3rem!important}
.video-card .video-label{color:#e0ae7d}
.video-card h3{color:var(--cream);margin-bottom:1rem}
.video-card .small{color:#d9c5b3!important}
.video-card .small:hover{color:#f0c79d!important}
@media(prefers-reduced-motion:reduce){.video-card:hover{transform:none}}

/* Programme schedule rows. */
.programme-day-note{color:#8b694f;font-size:.8rem;line-height:1.6;margin:0 auto 18px;max-width:760px}.programme-day-note i{color:#986843}.programme-list{max-width:760px;margin:0 auto;border-top:1px solid #ded2c4}.programme-item{display:grid;grid-template-columns:108px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid #ded2c4;text-align:left}.programme-item time{color:#986843;font-family:Georgia,'Times New Roman',serif;font-size:1.08rem;font-weight:600;padding-top:2px}.programme-item h3{font-family:Arial,Helvetica,sans-serif;font-size:.98rem;line-height:1.35;letter-spacing:0;font-weight:700;margin:0;color:var(--cocoa)}.programme-item p{font-size:.78rem;line-height:1.55;color:#74685f;margin:4px 0 0}.programme-disclaimer{font-size:.72rem;color:#8a7768}
@media(max-width:575.98px){.programme-item{grid-template-columns:1fr;gap:4px;padding:14px 0}.programme-item time{font-size:.98rem}.programme-item h3{font-size:.92rem}}

.highlight-shop-name{display:inline-block;color:#754629;font-size:1.12em;font-weight:700;text-decoration:underline;text-decoration-color:#dfae7d;text-decoration-thickness:2px;text-underline-offset:3px}

#exposants .axel-logo-tile{background:#24150f;border-color:#24150f}
#exposants .axel-logo-tile img{object-fit:contain!important;object-position:center;padding:0}
