/*
Theme Name: Pickline
Theme URI: https://pickline.it/
Author: Maurizio Andreanò
Description: Tema a blocchi editoriale per Pickline.
Requires at least: 6.6
Tested up to: 7.0
Requires PHP: 8.1
Version: 1.0.5
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pickline
Tags: block-patterns, block-styles, full-site-editing, blog, news
*/

:root {
	--pickline-paper: #fbfaf8;
	--pickline-ink: #1d1d1b;
	--pickline-muted: #6f6b67;
	--pickline-line: #e7e1dc;
	--pickline-warm: #f3ede7;
	--pickline-accent: #b84e32;
	--pickline-wide: 1200px;
	--pickline-radius: 10px;
	--pickline-ease: 180ms ease;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
	background: var(--pickline-paper);
	color: var(--pickline-ink);
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

img { max-width: 100%; }

a {
	text-decoration-thickness: .07em;
	text-underline-offset: .18em;
}

:where(a, button, input, select, textarea, [tabindex]):focus-visible {
	outline: 2px solid var(--pickline-accent);
	outline-offset: 3px;
}

.alignwide,
.pickline-author-archive {
	width: min(calc(100% - 48px), var(--pickline-wide));
	max-width: var(--pickline-wide) !important;
	margin-inline: auto;
}

/* Header e navigazione */
.wp-block-template-part > .wp-block-group:first-child {
	padding-block: 28px !important;
}

header .wp-block-group.alignwide {
	min-height: 56px;
	align-items: center;
}

header .wp-block-site-logo img {
	display: block;
	width: auto;
	max-width: 220px;
	height: 60px;
	object-fit: contain;
}

header .wp-block-navigation {
	font-family: var(--wp--preset--font-family--interfaccia);
	font-size: .875rem !important;
}

header .wp-block-navigation__container { gap: 30px !important; }

.wp-block-navigation a {
	text-decoration: none;
	transition: color var(--pickline-ease);
}

.wp-block-navigation a:hover { color: var(--pickline-accent); }

/* Home */
.pickline-home { padding-top: 28px; }

.pickline-hero { padding-block: 28px 72px; }

.pickline-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 34%) minmax(0, 66%);
	gap: 48px;
	align-items: center;
}

.pickline-hero__content { min-width: 0; }

.pickline-hero__eyebrow,
.pickline-home-dynamic-category,
.wp-block-post-terms {
	margin: 0 0 14px;
	color: var(--pickline-accent);
	font-family: var(--wp--preset--font-family--interfaccia);
	font-size: .72rem;
	font-weight: 600;
	letter-spacing: .09em;
	line-height: 1.2;
	text-transform: uppercase;
}

.pickline-hero__title {
	max-width: 12ch;
	margin: 0 0 22px;
	font-family: var(--wp--preset--font-family--editoriale);
	font-size: clamp(2.75rem, 4.35vw, 4rem);
	font-weight: 500;
	letter-spacing: -.025em;
	line-height: .95;
}

.pickline-hero__title a,
.pickline-card__title a,
.pickline-recommended__title a { text-decoration: none; }

.pickline-hero__title a:hover,
.pickline-card__title a:hover,
.pickline-recommended__title a:hover { color: var(--pickline-accent); }

.pickline-hero .wp-block-post-excerpt {
	max-width: 35rem;
	margin-bottom: 26px;
	font-size: 1rem;
	line-height: 1.55;
}

.pickline-hero__button,
.pickline-newsletter__button {
	display: inline-flex;
	min-height: 46px;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: var(--pickline-ink);
	color: #fff;
	font-size: .83rem;
	font-weight: 600;
	padding: 11px 24px;
	text-decoration: none;
	transition: transform var(--pickline-ease), background var(--pickline-ease);
}

.pickline-hero__button:hover,
.pickline-newsletter__button:hover {
	background: #3f443d;
	transform: translateY(-1px);
}

.pickline-hero__image,
.pickline-card__image {
	display: block;
	width: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: var(--pickline-radius);
}

.pickline-hero__image img,
.pickline-card__image img,
.pickline-category-card__image img,
.pickline-article-image img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center;
}

.pickline-hero__image { border-radius: 0; }

.pickline-home-editorial {
	display: grid;
	grid-template-columns: minmax(0, 7fr) minmax(280px, 4fr);
	gap: 72px;
	align-items: start;
	padding-bottom: 72px;
}

.pickline-section-heading {
	display: flex;
	align-items: center;
	gap: 18px;
	margin: 0 0 24px;
	font-family: var(--wp--preset--font-family--interfaccia);
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: .08em;
	line-height: 1.2;
	text-transform: uppercase;
}

.pickline-section-heading::after {
	width: 54px;
	height: 1px;
	background: var(--pickline-line);
	content: "";
}

.pickline-home-latest__list,
.pickline-recommended__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.pickline-card {
	padding: 0 0 24px;
	margin: 0 0 24px;
	border-bottom: 1px solid var(--pickline-line);
}

.pickline-card__layout {
	display: grid;
	grid-template-columns: minmax(230px, 44%) minmax(0, 56%);
	gap: 28px;
	align-items: center;
}

.pickline-card__content { min-width: 0; }

.pickline-card__title {
	margin: 0 0 10px;
	font-family: var(--wp--preset--font-family--editoriale);
	font-size: clamp(1.65rem, 2.15vw, 2rem);
	font-weight: 500;
	letter-spacing: -.015em;
	line-height: 1;
}

.pickline-card .wp-block-post-excerpt {
	margin: 0 0 13px;
	color: #3b3936;
	font-size: .83rem;
	line-height: 1.45;
}

.pickline-card__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	color: var(--pickline-muted);
	font-size: .72rem;
}

.pickline-card__meta a { color: inherit; }

.pickline-card__meta time::before {
	margin-right: 12px;
	color: var(--pickline-accent);
	content: "•";
}

.pickline-recommended__item { margin-bottom: 22px; }

.pickline-recommended__layout {
	display: grid;
	grid-template-columns: 42% minmax(0, 58%);
	gap: 18px;
	align-items: center;
}

.pickline-recommended__title {
	margin: 0 0 9px;
	font-family: var(--wp--preset--font-family--editoriale);
	font-size: 1.25rem;
	font-weight: 500;
	letter-spacing: -.01em;
	line-height: 1.02;
}

.pickline-recommended time {
	color: var(--pickline-muted);
	font-size: .7rem;
}

.pickline-newsletter {
	margin-top: 34px;
	padding: 28px;
	border-radius: 18px;
	background: var(--pickline-warm);
}

.pickline-newsletter h2 {
	max-width: 12ch;
	margin: 0 0 14px;
	font-size: 2rem;
	line-height: .95;
}

.pickline-newsletter p {
	margin: 0 0 20px;
	font-size: .82rem;
	line-height: 1.5;
}

.pickline-newsletter__button { width: 100%; }

/* Temi del momento */
.pickline-topics {
	padding-block: 42px 48px !important;
	border-top: 1px solid var(--pickline-line);
}

.pickline-topics__grid { margin-top: 28px; }
.pickline-topics__note { color: var(--pickline-muted); }

.pickline-topics__grid > .wp-block-column {
	display: grid;
	grid-template-columns: 42px 1fr;
	gap: 14px;
	align-items: center;
	min-width: 0;
	padding-right: 18px;
	border-right: 1px solid var(--pickline-line);
}

.pickline-topics__grid > .wp-block-column:last-child { border-right: 0; }
.pickline-topics__grid p { margin: 0; font-size: .78rem; line-height: 1.35; }

/* Archivi categoria */
.pickline-category-header { max-width: 860px; }

.pickline-category-header .wp-block-query-title {
	margin: 8px 0 18px;
	font-size: clamp(3.25rem, 6vw, 5rem);
	line-height: .92;
}

.pickline-category-header .wp-block-term-description {
	max-width: 680px;
	color: var(--pickline-muted);
}

.pickline-category-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	gap: 64px;
	align-items: start;
}

.pickline-category-grid,
.pickline-category-grid .wp-block-post-template { min-width: 0; }

.pickline-category-list-heading {
	margin: 0 0 28px;
}

.pickline-category-grid .wp-block-post-template {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 44px 32px;
	margin: 0;
	padding: 0;
}

.pickline-category-grid .wp-block-post:first-child {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: minmax(0, 56%) minmax(0, 44%);
	grid-template-rows: repeat(4, auto) 1fr;
	column-gap: 40px;
	row-gap: 10px;
	align-items: start;
	padding-bottom: 48px;
	border-bottom: 1px solid var(--pickline-line);
}

.pickline-category-grid .wp-block-post:first-child > .pickline-category-card__image {
	grid-column: 1;
	grid-row: 1 / -1;
	margin: 0;
}

.pickline-category-grid .wp-block-post:first-child > :not(.pickline-category-card__image) {
	grid-column: 2;
}

.pickline-category-grid .wp-block-post:first-child .pickline-category-card__title {
	font-size: clamp(2rem, 3vw, 2.75rem) !important;
	line-height: 1;
}

.pickline-category-newsletter {
	position: sticky;
	top: 32px;
	margin-top: 60px;
}

.pickline-category-grid .wp-block-post-title { margin-block: 10px; }

/* Articolo */
.pickline-article-header { max-width: 1120px; }

.pickline-article-title {
	max-width: 17ch;
	margin: 18px 0 24px;
	font-size: clamp(3.25rem, 5vw, 4.25rem) !important;
	letter-spacing: -.025em;
	line-height: .94;
}

.pickline-article-header .wp-block-post-excerpt { max-width: 780px; }

.pickline-article-meta,
.pickline-article-author {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.pickline-article-author .wp-block-post-author__avatar img,
.pickline-article-meta .avatar {
	display: block;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	object-fit: cover;
}

.pickline-article-author .wp-block-post-author__byline { display: none; }

.pickline-article-layout { align-items: start; }
.pickline-article-layout > .wp-block-column { min-width: 0; }

.pickline-article-content {
	min-width: 0;
	max-width: 100%;
	overflow: clip;
	font-size: 1.075rem;
	line-height: 1.72;
}

.pickline-article-content > *,
.pickline-article-content :where(figure, img, video, canvas, svg, iframe) {
	max-width: 100% !important;
	box-sizing: border-box;
}

.pickline-article-content > :where(.alignwide, .alignfull) {
	width: 100% !important;
	margin-inline: 0 !important;
}

.pickline-article-content img,
.pickline-article-content video { display: block; height: auto; }
.pickline-article-content > :where(p, ul, ol, blockquote) { margin-bottom: 1.3em; }

.pickline-article-sidebar { position: sticky; top: 24px; }
.pickline-related .wp-block-post-template { margin: 0; padding: 0; }
.pickline-related .wp-block-post { padding: 0 0 22px; margin: 0 0 22px; border-bottom: 1px solid var(--pickline-line); }

/* Autori */
.pickline-author-profile {
	display: grid;
	grid-template-columns: 260px minmax(0, 1fr);
	gap: 56px;
	align-items: start;
	padding-block: 32px 64px;
}

.pickline-author-profile__avatar {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	border-radius: 50%;
	object-fit: cover;
}

.pickline-author-profile__label {
	margin: 0 0 16px;
	color: var(--pickline-accent);
	font-size: .72rem;
	font-weight: 600;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.pickline-author-profile h1 {
	margin: 0 0 18px;
	font-size: clamp(3.5rem, 6vw, 5rem);
	line-height: .94;
}

.pickline-author-profile__bio { max-width: 650px; }
.pickline-author-profile__count,
.pickline-author-profile__website { display: inline-block; margin: 18px 20px 0 0; font-size: .83rem; }
.pickline-author-archive__heading { margin-block: 48px 28px; }

.pickline-author-grid-layout {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 42px 32px;
}

.pickline-author-grid-layout > .pickline-author-grid,
.pickline-author-grid-layout > .pickline-author-grid > .wp-block-post-template { display: contents; }
.pickline-author-grid .wp-block-post { min-width: 0; }
.pickline-author-newsletter { align-self: start; }
.pickline-author-pagination { grid-column: 1 / -1; }

/* Footer */
footer.wp-block-template-part {
	margin-top: 0;
	background: var(--pickline-warm);
}

footer .wp-block-group.alignwide { padding-block: 44px !important; }
footer .wp-block-site-logo img { max-width: 190px; height: auto; }
footer .wp-block-navigation { font-size: .75rem !important; }

/* Menu mobile e tablet */
@media (max-width: 899px) {
	.alignwide,
	.pickline-author-archive { width: min(calc(100% - 40px), var(--pickline-wide)); }

	.wp-block-template-part > .wp-block-group:first-child { padding-block: 14px !important; }
	header .wp-block-group.alignwide { min-height: 44px; }
	header .wp-block-site-logo img { max-width: 156px; height: auto; }

	header .wp-block-navigation__responsive-container-open,
	header .wp-block-navigation__responsive-container-close {
		display: inline-flex;
		width: 44px;
		height: 44px;
		align-items: center;
		justify-content: center;
		padding: 0;
	}

	header .wp-block-navigation__responsive-container.is-menu-open {
		padding: 20px;
		background: var(--pickline-paper);
		color: var(--pickline-ink);
	}

	header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close {
		max-width: none;
	}

	header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		padding-top: 20px;
	}

	header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content::before {
		content: "";
		display: block;
		width: 156px;
		height: 54px;
		margin: 0 0 28px;
		background: url("assets/images/pickline-logo.png") left center / contain no-repeat;
	}

	header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
		display: block;
		width: 100%;
	}

	header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
		width: 100%;
		border-bottom: 1px solid var(--pickline-line);
	}

	header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
		display: flex;
		min-height: 58px;
		align-items: center;
		width: 100%;
		padding-inline: 12px 4px;
		font-family: var(--wp--preset--font-family--editoriale);
		font-size: 1.9rem;
		font-weight: 500;
		line-height: 1.05;
	}

	.pickline-hero__grid { grid-template-columns: 1fr; gap: 24px; }
	.pickline-hero__content { order: 1; }
	.pickline-hero__image { order: 2; }
	.pickline-home-editorial { grid-template-columns: 1fr; gap: 48px; }
	.pickline-card__layout { grid-template-columns: 1fr; gap: 16px; }
	.pickline-category-layout { grid-template-columns: 1fr; gap: 44px; }
	.pickline-category-newsletter { position: static; margin-top: 0; }
	.pickline-category-grid .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.pickline-category-grid .wp-block-post:first-child { grid-template-columns: 1fr 1fr; }
	.pickline-author-profile { grid-template-columns: 210px 1fr; gap: 40px; }
	.pickline-author-grid-layout { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 899px) {
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
		padding-inline: 28px 20px !important;
	}
}

@media (max-width: 767px) {
	.alignwide,
	.pickline-author-archive { width: min(calc(100% - 40px), var(--pickline-wide)); }

	.pickline-home { padding-top: 8px; }
	.pickline-hero { padding-block: 24px 48px; }
	.pickline-hero__grid { grid-template-columns: 1fr; gap: 24px; }
	.pickline-hero__content { order: 1; }
	.pickline-hero__image { order: 2; }
	.pickline-hero__title { max-width: 14ch; font-size: clamp(2.55rem, 11vw, 3.5rem); }
	.pickline-hero .wp-block-post-excerpt { font-size: .95rem; }

	.pickline-home-editorial { grid-template-columns: 1fr; gap: 48px; padding-bottom: 52px; }
	.pickline-card { padding-bottom: 32px; margin-bottom: 32px; }
	.pickline-card__layout { grid-template-columns: 1fr; gap: 16px; }
	.pickline-card__title { font-size: clamp(1.75rem, 8vw, 2.15rem); }
	.pickline-recommended__layout { grid-template-columns: 112px minmax(0, 1fr); gap: 16px; }
	.pickline-recommended__title { font-size: 1.35rem; }
	.pickline-newsletter { padding: 24px; }

	.pickline-topics__grid { flex-wrap: wrap !important; }
	.pickline-topics__grid > .wp-block-column { flex-basis: calc(50% - 16px) !important; border-right: 0; }

	.pickline-category-grid .wp-block-post-template { grid-template-columns: 1fr; }
	.pickline-category-grid .wp-block-post:first-child { display: block; grid-column: auto; }
	.pickline-category-grid .wp-block-post:first-child > * { margin-bottom: 14px; }
	.pickline-category-header .wp-block-query-title { font-size: clamp(3rem, 14vw, 4.25rem); }

	.pickline-article-title { max-width: none; font-size: clamp(2.75rem, 12vw, 3.75rem) !important; }
	.pickline-article-sidebar { position: static; margin-top: 48px; }

	.pickline-author-profile { grid-template-columns: 1fr; gap: 28px; padding-bottom: 44px; }
	.pickline-author-profile__avatar { max-width: 200px; }
	.pickline-author-profile h1 { font-size: clamp(3rem, 15vw, 4.25rem); }
	.pickline-author-grid-layout { grid-template-columns: 1fr; }
}

@media (max-width: 430px) {
	.alignwide,
	.pickline-author-archive { width: calc(100% - 40px); }
	.pickline-topics__grid > .wp-block-column { flex-basis: 100% !important; padding-block: 10px; }
	.pickline-recommended__layout { grid-template-columns: 104px minmax(0, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
