/*
Theme Name: CatressEye 2026
Template: hello-elementor
Description: Proposta di nuovo aspetto (02/10/2026): stessa struttura di Elementor (header, griglia articoli, articolo, footer), nuovi colori dal logo, caratteri e schede. Si attiva e disattiva cambiando tema; nessuna modifica ai contenuti.
Version: 1.0
*/

:root {
	--ce-oro: #c99a2e;        /* occhi del logo */
	--ce-oro-scuro: #9c7417;
	--ce-crema: #faf6ee;      /* sfondo */
	--ce-sabbia: #e9dfc8;     /* colore già usato nel sito (#D7CFAC) schiarito */
	--ce-salvia: #9a9671;     /* colore già usato nel sito */
	--ce-inchiostro: #221d17;
	--ce-testo: #3d362d;
	--ce-raggio: 18px;
	--ce-ombra: 0 10px 30px rgba(34, 29, 23, .08);
	--ce-titoli: "Fraunces", Georgia, serif;
	--ce-corpo: "Nunito Sans", system-ui, sans-serif;
}

body { background: var(--ce-crema); color: var(--ce-testo); font-family: var(--ce-corpo); font-size: 17px; line-height: 1.7; }
h1, h2, h3, h4, .elementor-heading-title { font-family: var(--ce-titoli) !important; color: var(--ce-inchiostro); letter-spacing: -.01em; }
a { color: var(--ce-oro-scuro); }
::selection { background: var(--ce-sabbia); }

/* Header: crema con filo oro (non fisso: con position sticky il widget di ricerca di Elementor resta nascosto) */
.elementor-location-header { background: rgba(250, 246, 238, .94); border-bottom: 1px solid var(--ce-sabbia); }
.elementor-location-header .elementor-widget-image img { height: 76px !important; width: 76px !important; max-width: none; object-fit: contain; border-radius: 50%; transition: transform .3s; }
.elementor-location-header .elementor-widget-image img:hover { transform: rotate(-4deg) scale(1.04); }
.elementor-nav-menu--main .elementor-item { font-family: var(--ce-corpo) !important; font-weight: 700 !important; font-size: 13px !important; letter-spacing: .12em; text-transform: uppercase; color: var(--ce-inchiostro) !important; }
.elementor-nav-menu--main .elementor-item:hover, .elementor-nav-menu--main .elementor-item.elementor-item-active { color: var(--ce-oro-scuro) !important; }
.elementor-nav-menu--main .elementor-item:after { background-color: var(--ce-oro) !important; height: 2px !important; }
.elementor-nav-menu--dropdown { background: #fff !important; border-radius: 12px; box-shadow: var(--ce-ombra); overflow: hidden; }

/* Ricerca */
.elementor-widget-search input[type="search"], .elementor-search-form__input { background: #fff !important; border: 1px solid var(--ce-sabbia) !important; border-radius: 999px 0 0 999px !important; padding-left: 22px !important; font-family: var(--ce-corpo); }
.elementor-search-form__submit, .elementor-widget-search button { background: var(--ce-inchiostro) !important; color: #fff !important; border-radius: 0 999px 999px 0 !important; font-weight: 700; letter-spacing: .06em; }

/* Griglia articoli (loop-item di Elementor): schede bianche */
.e-loop-item > .e-con { background: #fff; border-radius: var(--ce-raggio); box-shadow: var(--ce-ombra); overflow: hidden; height: 100%; transition: transform .25s, box-shadow .25s; }
.e-loop-item > .e-con:hover { transform: translateY(-4px); box-shadow: 0 18px 40px rgba(34, 29, 23, .14); }
.e-loop-item > .e-con > .e-con-inner { padding: 0 !important; gap: 0 !important; }
.e-loop-item > .e-con > .e-con-inner > .e-con:first-child { border-radius: 0 !important; }
.e-loop-item > .e-con > .e-con-inner > .e-con:last-child { padding: 18px 22px 22px !important; gap: 14px; }
.e-loop-item .elementor-heading-title { font-size: 21px !important; line-height: 1.25 !important; font-weight: 600 !important; }
.e-loop-item .elementor-heading-title a { color: var(--ce-inchiostro) !important; }
.e-loop-item .elementor-heading-title a:hover { color: var(--ce-oro-scuro) !important; }
.e-loop-item .elementor-button { background: transparent !important; color: var(--ce-oro-scuro) !important; padding: 0 !important; font-family: var(--ce-corpo); font-weight: 800; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; border-bottom: 2px solid var(--ce-oro); border-radius: 0 !important; }
.e-loop-item .elementor-button:hover { color: var(--ce-inchiostro) !important; }

/* Articolo e pagine: colonna di lettura */
.single-post .elementor-widget-theme-post-content, .single-post .elementor-widget-text-editor, .page .elementor-widget-text-editor { max-width: 760px; margin-left: auto; margin-right: auto; }
.single-post .elementor-widget-theme-post-title .elementor-heading-title, .single-post h1 { font-size: clamp(32px, 4.4vw, 52px) !important; line-height: 1.1 !important; font-weight: 600; text-align: center; max-width: 900px; margin: 24px auto 8px; }
.single-post .elementor-widget-theme-post-content h2 { font-size: 30px; margin-top: 1.8em; color: var(--ce-inchiostro) !important; text-transform: none !important; }
.single-post .elementor-widget-theme-post-content h3 { font-size: 23px; margin-top: 1.5em; }
.single-post .elementor-widget-theme-post-content h2::before { content: ""; display: block; width: 44px; height: 3px; background: var(--ce-oro); margin-bottom: 14px; }
.single-post .elementor-widget-theme-post-content img, .elementor-widget-image-carousel img { border-radius: 14px; }
.single-post .elementor-widget-theme-post-content strong { color: var(--ce-inchiostro); }
.single-post .elementor-widget-theme-post-content ul li::marker { color: var(--ce-oro); }
.single-post .elementor-widget-theme-post-content blockquote { border-left: 3px solid var(--ce-oro); background: #fff; border-radius: 0 12px 12px 0; padding: 16px 22px; font-family: var(--ce-titoli); font-size: 20px; }
.swiper-pagination-bullet-active { background: var(--ce-oro) !important; }

/* Footer: scuro con icone oro */
.elementor-location-footer { background: var(--ce-inchiostro); color: #d8cfbf; margin-top: 64px; padding: 36px 0 28px; }
.elementor-location-footer * { color: #d8cfbf; }
.elementor-location-footer .elementor-social-icon { background: transparent !important; border: 1px solid rgba(201, 154, 46, .5); border-radius: 50% !important; transition: background .2s; }
.elementor-location-footer .elementor-social-icon i, .elementor-location-footer .elementor-social-icon svg { color: var(--ce-oro) !important; fill: var(--ce-oro) !important; }
.elementor-location-footer .elementor-social-icon:hover { background: var(--ce-oro) !important; }
.elementor-location-footer .elementor-social-icon:hover svg { fill: var(--ce-inchiostro) !important; }

/* Banner dei cookie in tinta */
#cookie-law-info-bar { background: #fff !important; border-top: 3px solid var(--ce-oro); box-shadow: 0 -8px 24px rgba(0, 0, 0, .06); }
#cookie_action_close_header { background: var(--ce-inchiostro) !important; border-radius: 999px !important; }

@media (max-width: 767px) {
	body { font-size: 16px; }
	.e-loop-item .elementor-heading-title { font-size: 19px !important; }
}

/* Titoli dei contenuti con colori scritti a mano nell'editor (es. azzurro): stessa tinta del tema */
.single-post .elementor-widget-theme-post-content h2, .single-post .elementor-widget-theme-post-content h2 *,
.single-post .elementor-widget-theme-post-content h3 * { color: var(--ce-inchiostro) !important; }
.single-post h2.elementor-heading-title, .single-post h2.elementor-heading-title * { color: var(--ce-inchiostro) !important; }
/* La ricerca di Elementor resta «hidden» finché il suo script non parte: si mostra subito */
.elementor-widget-search .e-search.hidden { display: block !important; visibility: visible !important; opacity: 1 !important; }

/* Commenti (template di WordPress fuori dai contenitori di Elementor): colonna centrata come il testo */
#comments.comments-area { max-width: 760px; margin: 56px auto 0; padding: 32px 24px 8px; background: #fff; border-radius: var(--ce-raggio); box-shadow: var(--ce-ombra); box-sizing: border-box; }
@media (max-width: 800px) { #comments.comments-area { margin: 40px 16px 0; padding: 24px 18px 4px; } }
#comments .title-comments, #comments .comment-reply-title { font-size: 26px; margin: 0 0 18px; }
#comments .comment-list { list-style: none; margin: 0 0 24px; padding: 0; }
#comments .comment-list .children { list-style: none; margin: 0; padding-left: 28px; border-left: 2px solid var(--ce-sabbia); }
#comments .comment-body { padding: 16px 0; border-bottom: 1px solid var(--ce-sabbia); }
#comments .comment-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px; font-size: 14px; }
#comments .comment-author { display: flex; align-items: center; gap: 10px; }
#comments .comment-author .avatar { border-radius: 50%; }
#comments .comment-metadata a { color: var(--ce-salvia); font-size: 13px; text-decoration: none; }
#comments .comment-content { margin-top: 8px; }
#comments .reply a { font-size: 13px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
#comments label { display: block; font-weight: 700; font-size: 14px; margin-bottom: 4px; }
#comments input[type="text"], #comments input[type="email"], #comments input[type="url"], #comments textarea { width: 100%; max-width: 100%; box-sizing: border-box; border: 1px solid var(--ce-sabbia); border-radius: 12px; padding: 10px 14px; background: var(--ce-crema); font: inherit; }
#comments textarea { min-height: 140px; }
#comments input:focus, #comments textarea:focus { outline: 2px solid var(--ce-oro); border-color: transparent; }
#comments .comment-form-cookies-consent { display: flex; gap: 8px; align-items: flex-start; font-size: 14px; }
#comments .comment-form-cookies-consent label { display: inline; font-weight: 400; }
#comments input[type="submit"] { background: var(--ce-inchiostro); color: #fff; border: 0; border-radius: 999px; padding: 12px 26px; font-weight: 800; letter-spacing: .06em; cursor: pointer; }
#comments input[type="submit"]:hover { background: var(--ce-oro-scuro); }
