/* Palazzo Roberti — stili del tema (frontend + editor). Colori, font e misure sono in theme.json. */

/* Struttura: sezioni a tutta larghezza senza spazi tra header, contenuto e footer */
.wp-site-blocks{position:relative}
.wp-site-blocks>*{margin-block:0}
.wp-block-post-content>.alignfull{margin-block:0}

/* Header: sovrapposto alla prima immagine della pagina, solido altrimenti */
.pr-header--overlay{position:absolute;top:0;left:0;right:0;z-index:30}
.pr-header--solid,
.wp-site-blocks:not(:has(.wp-block-post-content>:is(.wp-block-cover,.pr-hero-video):first-child))>.pr-header--overlay{position:relative;background:var(--wp--preset--color--ardesia)}
.wp-block-post-content>.wp-block-cover:first-child{padding-top:var(--wp--custom--header-height);padding-bottom:var(--wp--preset--spacing--60)}

/* Menu: hamburger fino a 1023px (il core lo mostra solo sotto 600px) */
@media (min-width:600px) and (max-width:1023px){
	.pr-header .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}
	.pr-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none}
}
/* Menu aperto (mobile): margini laterali come la pagina e voci un po' più distanziate */
.pr-header .wp-block-navigation__responsive-container.is-menu-open{padding-inline:var(--wp--preset--spacing--60)}
.pr-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{row-gap:1.75rem}
/* Voci di menu: la sottolineatura compare in dissolvenza (sempre visibile sulla pagina corrente) */
.pr-header .wp-block-navigation-item__content{text-decoration:underline;text-decoration-color:transparent;text-underline-offset:.3em;transition:text-decoration-color .3s ease}
.pr-header .wp-block-navigation-item__content:is(:hover,:focus-visible,[aria-current]){text-decoration-color:currentColor}

/* Link nel testo: la sottolineatura svanisce in dissolvenza al passaggio del mouse (theme.json la toglierebbe di colpo) */
:root a:where(:not(.wp-element-button)){transition:text-decoration-color .3s ease}
:root a:where(:not(.wp-element-button)):hover{text-decoration-line:underline;text-decoration-color:transparent}

/* Tipografia */
.has-mono-font-family{line-height:1.3}
h1,h2,h3,.is-style-occhiello{overflow-wrap:break-word}
.is-style-occhiello+:is(h1,h2,h3){margin-block-start:var(--wp--preset--spacing--20)}
h1+.is-style-occhiello{margin-block-start:var(--wp--preset--spacing--20)}
h2+.is-style-occhiello,h1+.is-style-sottotitolo{margin-block-start:var(--wp--preset--spacing--30)}

/* Sezioni testo + immagine (Media e testo a tutta larghezza) */
.wp-block-media-text.alignfull{min-height:var(--wp--custom--split-min-height)}
.wp-block-media-text.alignfull>.wp-block-media-text__content{padding:var(--wp--preset--spacing--70) var(--wp--preset--spacing--60)}
.wp-block-media-text__content>*{max-width:580px;margin-block:0}
/* Testo a sinistra: meno margine verso l'immagine, e i titoli usano tutta la colonna (come Figma, "Le funzioni occupano spazi" su una riga) */
.wp-block-media-text.alignfull.has-media-on-the-right>.wp-block-media-text__content{padding-inline-end:var(--wp--preset--spacing--40)}
.wp-block-media-text__content>:is(h1,h2){max-width:none}
.wp-block-media-text__content>*+*{margin-block-start:var(--wp--style--block-gap)}
/* Oltre 1440px il testo resta allineato alla colonna dei contenuti (1292px) come menu e titoli:
   100% = metà sezione, quindi il margine in più vale 0 fino a 1440px */
.wp-block-media-text.alignfull.has-media-on-the-right>.wp-block-media-text__content{padding-inline-start:calc(var(--wp--preset--spacing--60) + max(0px, 100% - 720px))}
.wp-block-media-text.alignfull:not(.has-media-on-the-right)>.wp-block-media-text__content{padding-inline-end:calc(var(--wp--preset--spacing--60) + max(0px, 100% - 720px))}
@media (max-width:600px){
	.wp-block-media-text.alignfull.is-stacked-on-mobile>.wp-block-media-text__media{height:75vw;min-height:0}
	/* Stile "Testo sopra su mobile": impilato, il testo viene prima dell'immagine */
	.wp-block-media-text.is-style-testo-sopra.is-stacked-on-mobile.is-stacked-on-mobile>.wp-block-media-text__content{grid-row:1}
	.wp-block-media-text.is-style-testo-sopra.is-stacked-on-mobile.is-stacked-on-mobile>.wp-block-media-text__media{grid-row:2}
}

/* Copertine */
/* Il velo copre tutta la copertina: il layout "constrained" altrimenti lo restringe alla colonna e lo sposta in basso */
.wp-block-cover.is-layout-constrained>:is(.wp-block-cover__background,.wp-block-cover__gradient-background){max-width:none;margin:0!important}
.wp-block-cover__inner-container>p:empty{display:none}
.wp-block-cover:not(:has(>.wp-block-cover__image-background,>.wp-block-cover__video-background))>.wp-block-cover__background{opacity:1!important}
.wp-block-cover .is-style-occhiello:not(.has-text-color){color:var(--wp--preset--color--oliva)}
/* Oltre 1440px testate (testo a sinistra) e slide (testo a destra) restano sulla colonna dei contenuti (1292px) */
.wp-block-cover.has-custom-content-position.has-custom-content-position.is-position-center-left>.wp-block-cover__inner-container{margin-inline-start:max(0px,(100% - 1292px) / 2)}
.wp-block-cover.has-custom-content-position.has-custom-content-position.is-position-center-right>.wp-block-cover__inner-container{margin-inline-end:max(0px,(100% - 1292px) / 2)}
/* Testate su mobile: più basse, con un taglio orizzontale */
@media (max-width:781px){
	.wp-block-post-content>.wp-block-cover.is-position-center-left:first-child{min-height:max(17.5rem,62vw)!important}
}

/* Stile "Con icona play" (hero home): triangolo decorativo */
.wp-block-cover.is-style-hero-play::after{content:"";position:absolute;z-index:2;left:50%;top:50%;width:clamp(2.75rem,5.14vw,4.625rem);aspect-ratio:74/69;background:rgb(255 255 255/.71);clip-path:polygon(0 0,100% 50%,0 100%);transform:translate(-40%,-50%);pointer-events:none}
@media (max-width:781px){
	.wp-block-cover.is-style-hero-play{min-height:min(720px,100vw)!important}
}

/* Video introduttivo (sostituisce l'hero quando il video sarà disponibile) */
.pr-hero-video{margin:0}
.pr-hero-video video{display:block;width:100%;aspect-ratio:2/1;object-fit:cover;background:var(--wp--preset--color--ardesia)}
@media (max-width:781px){.pr-hero-video video{aspect-ratio:16/9}}

/* Pulsanti-link: stile "Scarica" con freccia in giù; pulsanti senza link non cliccabili */
.wp-block-button.is-style-download .wp-block-button__link::after{content:"";display:inline-block;width:.45em;height:.45em;margin-inline-start:.7em;border:solid currentColor;border-width:0 2px 2px 0;transform:translateY(-.25em) rotate(45deg)}
.wp-block-button__link:not([href]){cursor:default;text-decoration:none}
.wp-block-button__link{text-align:start}
/* Pulsanti-link: la sottolineatura compare in dissolvenza */
.wp-block-button .wp-block-button__link{text-decoration-line:underline;text-decoration-color:transparent;text-underline-offset:.3em;transition:text-decoration-color .3s ease}
.wp-block-button .wp-block-button__link[href]:is(:hover,:focus-visible){text-decoration-color:currentColor}

/* Pay-off della home su mobile: frasi con interlinea più stretta e più aria sopra e sotto */
@media (max-width:781px){
	.wp-block-group:has(>.has-display-font-size){padding-block:var(--wp--preset--spacing--70)!important}
	.wp-block-group:has(>.has-display-font-size)>p{line-height:1.35!important}
}

/* FAQ (Accordion): voci attaccate separate dalla sola linea; icona "+" disegnata in CSS che diventa "−"
   (l'animazione di apertura e chiusura è in faq.css, solo sul sito) */
.wp-block-accordion>.wp-block-accordion-item+.wp-block-accordion-item{margin-block-start:0}
.wp-block-accordion-heading__toggle{padding-block:.8em}
.wp-block-accordion-item>.wp-block-accordion-panel{margin-block:0}
.wp-block-accordion-panel>*+*{margin-block-start:.5em}
.wp-block-accordion-heading__toggle-icon{position:relative;margin-inline-start:var(--wp--preset--spacing--50);color:transparent}
.wp-block-accordion-heading__toggle-icon::before,.wp-block-accordion-heading__toggle-icon::after{content:"";position:absolute;top:50%;left:50%;width:.55em;height:2px;margin:-1px 0 0 -.275em;background:var(--wp--preset--color--grigio-testo)}
.wp-block-accordion-heading__toggle-icon::after{transform:rotate(90deg)}
.wp-block-accordion-item.is-open>.wp-block-accordion-heading .wp-block-accordion-heading__toggle-icon{transform:none}
.wp-block-accordion-item.is-open>.wp-block-accordion-heading .wp-block-accordion-heading__toggle-icon::after{transform:rotate(0deg)}
@media (forced-colors:active){
	.wp-block-accordion-heading__toggle-icon{forced-color-adjust:none}
	.wp-block-accordion-heading__toggle-icon::before,.wp-block-accordion-heading__toggle-icon::after{background:CanvasText}
}

/* Focus visibile sui controlli nativi */
:where(.wp-block-accordion-heading__toggle,.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close):focus-visible{outline:2px solid currentColor;outline-offset:3px}
