/*
 * CSEL · Proposta di rifinitura v1.0
 * Colori e caratteri ripresi dal progetto originale del cliente.
 * Solo nel tema di prova WPVibe, prima dell'approvazione.
 */
:root {
 --csel-paper:#faf8f3; --csel-ink:#292725; --csel-red:#a9382c;
 --csel-line:#d9d4ca; --csel-muted:#6c6961; --csel-charcoal:#292e2b;
}
body {background:var(--csel-paper)}
.csel-brand-strip {background:var(--csel-paper);border-bottom:1px solid var(--csel-line);}
.csel-brand-strip__inner {
 max-width:1280px; margin:0 auto; padding:22px 32px 20px;
 display:flex;align-items:center;justify-content:space-between;gap:36px;
}
.csel-brand-strip__brand {display:inline-flex;gap:23px;align-items:center;text-decoration:none!important;min-width:0;color:var(--csel-ink);}
.csel-brand-strip__brand:hover {color:var(--csel-ink);}
.csel-brand-mark {width:91px!important;height:77px!important;max-width:none;object-fit:contain;mix-blend-mode:multiply;display:block;}
.csel-brand-strip__copy {display:flex;flex-direction:column;gap:7px;padding-left:22px;border-left:1px solid var(--csel-line);}
.csel-brand-strip__eyebrow {font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--csel-red);}
.csel-brand-strip__copy strong {font-family:Georgia,serif;font-size:clamp(27px,3vw,41px);font-weight:400;line-height:1.06;letter-spacing:-.027em;}
.csel-brand-strip__copy strong em {color:var(--csel-red);font-style:italic;}
.csel-brand-strip__utility {display:flex;align-items:center;gap:28px;}
.csel-brand-strip__utility a {text-decoration:none!important;font-size:12px;font-weight:600;white-space:nowrap;color:var(--csel-ink);border-bottom:1px solid var(--csel-line);padding-bottom:6px;}
.csel-brand-strip__utility a:hover {color:var(--csel-red);border-color:var(--csel-red);}
.csel-brand-strip__utility .csel-brand-strip__subscribe {background:var(--csel-red);color:#fff!important;padding:13px 17px;border:0;}
.csel-brand-strip__utility .csel-brand-strip__subscribe:hover {background:#872e24;}
/* Astra renders the actual desktop/mobile navigation, including focus and submenu toggles. */
body #masthead {background:var(--csel-paper);box-shadow:0 3px 10px rgba(41,39,37,.03);position:relative;z-index:90;}
body #masthead .ast-primary-header-bar {background:var(--csel-paper);border-bottom:1px solid var(--csel-line);}
body #masthead .main-header-menu > .menu-item > .menu-link {font:600 12px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.025em;padding:17px 10px;color:var(--csel-ink);}
body #masthead .main-header-menu > .menu-item > .menu-link:hover,
body #masthead .main-header-menu > .current-menu-item > .menu-link,
body #masthead .main-header-menu > .current-menu-ancestor > .menu-link {color:var(--csel-red);}
body #masthead .main-header-menu .sub-menu {background:var(--csel-paper);border-top:3px solid var(--csel-red);box-shadow:0 13px 25px rgba(41,39,37,.13);}
body #masthead .main-header-menu .sub-menu .menu-link {font:400 13px/1.4 Arial,Helvetica,sans-serif;padding:13px 17px;color:var(--csel-ink);}
body #masthead .main-header-menu .sub-menu .menu-link:hover {color:var(--csel-red);background:#eeeae1;}
body #masthead .main-header-menu .ast-header-navigation-arrow {color:var(--csel-red);}
/* Visual rhythm for imported Elementor layouts, without changing page data. */
body.elementor-page .site-content > .ast-container {max-width:none;padding-left:0;padding-right:0;}
body .csel-v15 {color:var(--csel-ink);background:var(--csel-paper);}
body .csel-v15 .page-banner.e-con {background:#eeeae1;border-bottom:1px solid var(--csel-line);}
body .csel-v15 .page-banner .eyebrow {color:var(--csel-red);}
body .csel-v15 .page-body {line-height:1.7;}
body .csel-v15 .page-body p {max-width:78ch;}
body .csel-v15 .page-body a:not(.elementor-button):not(.button):hover {color:var(--csel-red);}
body .csel-v15 .elementor-widget-image img {max-width:100%;}
body .csel-v15 .breadcrumbs.e-con {flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px;}
body .csel-v15 .hero-image {overflow:hidden;}
body .csel-v15 .hero-image .elementor-widget-image img {display:block;object-fit:cover;}
body .csel-v15 .catalog-card {transition:border-color .15s ease,transform .15s ease;}
body .csel-v15 .catalog-card:hover {border-color:#bba89d;}
body .csel-v15 a:focus-visible, .csel-site-footer a:focus-visible,.csel-brand-strip a:focus-visible {outline:2px solid var(--csel-red);outline-offset:4px;}
/* Replaces Astra's boilerplate footer in the child-theme preview. */
.csel-site-footer {background:var(--csel-charcoal);color:#f4efe5;padding:0;font-family:Arial,Helvetica,sans-serif;}
.csel-site-footer__main {
 max-width:1280px;margin:0 auto;padding:67px 32px 54px;
 display:grid;grid-template-columns:minmax(250px,1.65fr) minmax(125px,.9fr) minmax(215px,1.15fr) minmax(125px,.8fr);
 gap:clamp(22px,3.5vw,64px);align-items:start;
}
.csel-site-footer__brand {padding-right:25px;}
.csel-site-footer__title {display:inline-block;text-decoration:none!important;color:#f4efe5!important;font:400 clamp(26px,2.5vw,35px)/1.08 Georgia,serif;letter-spacing:-.6px;}
.csel-site-footer__title strong {font-weight:400;}
.csel-site-footer__dot {color:#d89778;font-weight:bold;}
.csel-site-footer__brand p {margin:23px 0;color:#d0d1c9;font-size:14px;line-height:1.75;}
.csel-site-footer__brand small {color:#d89778;text-transform:uppercase;letter-spacing:.15em;font-size:10px;}
.csel-site-footer__col h2 {font:700 11px/1.35 Arial,Helvetica,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#e4aa88;margin:3px 0 21px;}
.csel-site-footer__col ul {list-style:none;padding:0;margin:0;}
.csel-site-footer__col li {margin:0 0 11px;}
.csel-site-footer__col a:not(.csel-site-footer__action) {display:inline-block;text-decoration:none!important;color:#f4efe5;font-size:13px;line-height:1.65;overflow-wrap:anywhere;}
.csel-site-footer__col a:hover {color:#ffbf9c!important;}
.csel-site-footer__col address {font-style:normal;color:#f4efe5;line-height:1.7;font-size:13px;margin-bottom:17px;}
.csel-site-footer__col > a:not(.csel-site-footer__action) {display:block;white-space:normal;margin-bottom:9px;}
.csel-site-footer__hours {font-size:12px;color:#c5c6bb;margin:14px 0;}
.csel-site-footer__action {display:inline-block;background:#a9382c;color:white!important;text-decoration:none!important;padding:13px 15px;margin-top:18px;font-size:12px;font-weight:600;line-height:1.4;}
.csel-site-footer__action:hover {background:#822c22;color:white!important;}
.csel-site-footer__bottom {border-top:1px solid #4b514b;max-width:1280px;margin:auto;padding:21px 32px 28px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;color:#c1c6bd;font-size:11px;letter-spacing:.02em;}
.csel-site-footer__bottom a {color:#f4efe5;text-decoration:underline;}
@media(min-width:922px){
 body #ast-desktop-header .site-header-primary-section-left {display:none;}
 body #ast-desktop-header .ast-builder-grid-row {display:flex!important;justify-content:center;}
 body #ast-desktop-header .site-header-primary-section-right {width:100%;justify-content:center;}
 body #ast-desktop-header .main-header-bar-navigation,body #ast-desktop-header .main-navigation {width:100%;}
 body #ast-desktop-header .main-navigation > ul {display:flex;justify-content:space-between;width:100%;}
}
@media(max-width:1120px) and (min-width:922px){
 .csel-brand-strip__inner{padding:20px 22px;}
 .csel-brand-strip__utility{gap:12px;}
 body #masthead .main-header-menu > .menu-item > .menu-link{font-size:11px;padding:15px 7px;}
 .csel-site-footer__main{grid-template-columns:1.4fr 1fr 1.2fr;gap:35px;}
 .csel-site-footer__main > :last-child{grid-column:2/4;}
}
@media(max-width:921px){
 .csel-brand-strip {display:none;}
 body #ast-mobile-header .ast-primary-header-bar {padding:6px 0;}
 body #ast-mobile-header .site-title a {font:600 clamp(15px,3vw,21px)/1.25 Georgia,serif;color:var(--csel-ink);display:flex;align-items:center;gap:12px;max-width:285px;}
 body #ast-mobile-header .site-title a::before {content:'';display:inline-block;flex:none;width:38px;height:38px;background:url('https://www.centrostudiluccini.it/wp-content/uploads/csel-v15/assets/logo.jpg') center / contain no-repeat;mix-blend-mode:multiply;}
 body #ast-mobile-header .ast-mobile-menu-trigger-minimal {color:var(--csel-red);padding:10px;}
 .csel-site-footer__main{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px;padding:50px 28px 42px;}
 body .csel-v15 .page-body p{max-width:none;}
}
@media(max-width:650px){
 body .csel-v15 .hero.e-con{padding:25px 0;gap:25px;}
 body .csel-editable .hero-copy.e-con{padding:10px 0 0;}
 body .csel-v15 .hero-image.e-con{height:270px;}
 body .csel-v15 .section{padding:42px 0;}
 body .csel-v15 .page-layout.e-con{grid-template-columns:minmax(0,1fr)!important;gap:26px!important;}
 body .csel-v15 .page-aside{position:static;}
 body .csel-v15 .exhibit-objects.e-con{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
 body .csel-v15 .team-grid.e-con{grid-template-columns:1fr!important;}
 body .csel-v15 .page-banner h1{overflow-wrap:break-word;}
 .csel-site-footer__main{grid-template-columns:1fr;gap:30px;padding:43px 22px 35px;}
 .csel-site-footer__brand{padding-right:0;}
 .csel-site-footer__bottom{padding:18px 22px 24px;}
 .csel-site-footer__col h2{margin-bottom:13px;}
 body #ast-mobile-header .site-title a{font-size:15px;max-width:240px;gap:8px;}
 body #ast-mobile-header .site-title a::before{width:32px;height:32px;}
}
@media(max-width:385px){
 body .csel-v15 .wrap,body .csel-v15 .hero{width:calc(100% - 24px);}
 body .csel-v15 .exhibit-objects.e-con{grid-template-columns:1fr!important;}
 body #ast-mobile-header .site-title a{font-size:14px;max-width:205px;}
}
@media(prefers-reduced-motion:reduce){body .csel-v15 *{scroll-behavior:auto;transition:none!important;}}
