/* Godocoldolce — rivista gourmet elegante. Un solo foglio di stile. */
:root {
	--ink: #1f1c19; --ink-2: #5b544c; --line: #e7e1d8; --paper: #fff; --cream: #f8f5ef;
	--sage: #829875; --sage-dk: #566a4b; --cocoa: #6b4a3a;
	--serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;
	--sans: "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
	--w: 1200px; --gutter: 24px;
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 400 17px/1.65 var(--sans); -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
a:hover { color: var(--sage-dk); }
img { max-width: 100%; height: auto; display: block; }
h1, h2, h3, h4 { font-family: var(--serif); font-weight: 600; line-height: 1.1; margin: 0; }
h1 i, h2 i, h3 i { color: var(--sage-dk); font-style: italic; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; padding: 0; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); white-space: nowrap; }
.gcd-skip { position: absolute; left: -999px; top: 8px; z-index: 100; background: var(--ink); color: #fff; padding: 8px 14px; }
.gcd-skip:focus { left: 8px; }
.gcd-wrap { max-width: var(--w); margin: 0 auto; padding: 0 var(--gutter); }
.gcd-wrap--narrow { max-width: 860px; }
.gcd-main { min-height: 50vh; }
:focus-visible { outline: 2px solid var(--sage-dk); outline-offset: 3px; }

/* Elementi comuni */
.gcd-kicker { display: inline-block; font: 700 11.5px/1.4 var(--sans); letter-spacing: 2px; text-transform: uppercase; color: var(--sage-dk); }
.gcd-meta { font-size: 13px; color: var(--ink-2); }
.gcd-sec-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; border-bottom: 1px solid var(--ink); padding-bottom: 10px; margin: 64px 0 28px; }
.gcd-sec-head h2 { font-size: 34px; }
.gcd-sec-head a { font: 600 13px var(--sans); letter-spacing: 1px; text-transform: uppercase; color: var(--ink-2); white-space: nowrap; }
.gcd-sec-head a:hover { color: var(--sage-dk); }
.gcd-sec-head--tight { margin-top: 40px; }
.gcd-grid { display: grid; gap: 32px; }
.gcd-grid--3 { grid-template-columns: repeat(3, 1fr); }
.gcd-grid--4 { grid-template-columns: repeat(4, 1fr); }
.gcd-btn { display: inline-flex; align-items: center; gap: 8px; padding: 12px 22px; border: 1px solid var(--ink); font: 600 13px/1 var(--sans); letter-spacing: 1.5px; text-transform: uppercase; color: var(--ink); background: transparent; transition: background .2s, color .2s, border-color .2s; }
.gcd-btn--fill { background: var(--ink); color: #fff; }
.gcd-btn--light { border-color: #fff; color: #fff; }
.gcd-btn:hover { background: var(--sage-dk); border-color: var(--sage-dk); color: #fff; }
.gcd-empty { color: var(--ink-2); margin: 40px 0; }
.gcd-icon { flex: none; }

/* Segnaposto immagine */
.gcd-ph { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; min-height: 100px; aspect-ratio: 4 / 3; background: var(--cream) radial-gradient(circle at 50% 40%, #fff 0, var(--cream) 70%); color: var(--sage); }

/* Header */
.gcd-topbar { border-bottom: 1px solid var(--line); font-size: 13px; color: var(--ink-2); }
.gcd-topbar__inner { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding-top: 8px; padding-bottom: 8px; }
.gcd-topbar__tagline { font: 500 italic 16px/1.3 var(--serif); color: var(--ink); }
.gcd-topbar__list { list-style: none; margin: 0; padding: 0; display: flex; gap: 18px; }
.gcd-brand { text-align: center; padding: 28px 0 18px; }
.gcd-logo { display: inline-flex; align-items: center; gap: 14px; }
.gcd-logo__img { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; }
.gcd-logo__name { font: 600 46px/1 var(--serif); letter-spacing: .5px; color: var(--ink); }
.gcd-logo__name i { color: var(--sage-dk); font-weight: 500; font-style: normal; }
.gcd-logo--small .gcd-logo__img { width: 44px; height: 44px; }
.gcd-logo--small .gcd-logo__name { font-size: 30px; }
.gcd-navbar { border-top: 1px solid var(--ink); border-bottom: 1px solid var(--line); position: relative; }
.gcd-navbar__inner { display: flex; align-items: center; justify-content: center; position: relative; }
.gcd-navbar__btn { display: inline-flex; align-items: center; gap: 6px; padding: 14px 10px; font: 600 13px var(--sans); letter-spacing: 1.4px; text-transform: uppercase; }
.gcd-navbar__btn:hover { color: var(--sage-dk); }
.gcd-menu-toggle { display: none; }
.gcd-menu-toggle__close, .gcd-menu-toggle[aria-expanded="true"] .gcd-menu-toggle__open { display: none; }
.gcd-menu-toggle[aria-expanded="true"] .gcd-menu-toggle__close { display: inline-flex; align-items: center; gap: 6px; }
.gcd-menu-toggle__open { display: inline-flex; align-items: center; gap: 6px; }
.gcd-nav__list, .gcd-nav__list ul { list-style: none; margin: 0; padding: 0; }
.gcd-nav__list { display: flex; justify-content: center; flex-wrap: wrap; }
.gcd-nav__list > li { position: relative; }
.gcd-nav__list > li > a { display: block; padding: 14px 13px; font: 600 13px var(--sans); letter-spacing: 1.4px; text-transform: uppercase; }
.gcd-nav__list > li > a:hover, .gcd-nav__list > li.current-menu-item > a, .gcd-nav__list > li.current-menu-ancestor > a, .gcd-nav__list > li.current-menu-parent > a { color: var(--sage-dk); }
.gcd-sub-toggle { display: none; }
.gcd-nav__list .sub-menu { display: none; position: absolute; left: 0; top: 100%; background: #fff; border: 1px solid var(--line); min-width: 260px; padding: 8px 0; z-index: 20; box-shadow: 0 12px 30px #0000000f; }
.gcd-nav__list > li:hover > .sub-menu, .gcd-nav__list > li:focus-within > .sub-menu, .gcd-nav__list > li.is-open > .sub-menu { display: block; }
.gcd-nav__list .sub-menu a { display: block; padding: 7px 18px; font-size: 15px; }
.gcd-nav__list .sub-menu a:hover { background: var(--cream); color: var(--ink); }
.gcd-nav__list .sub-menu .sub-menu { position: static; border: 0; box-shadow: none; padding: 0 0 4px 12px; display: block; }
.gcd-nav__list .sub-menu .sub-menu a { font-size: 14px; color: var(--ink-2); }
.gcd-nav__list > li.gcd-mega > .sub-menu { columns: 2; column-gap: 0; min-width: 540px; }
.gcd-nav__list > li.gcd-mega > .sub-menu > li { break-inside: avoid; }
.gcd-nav__list > li:nth-last-child(-n+2) > .sub-menu { left: auto; right: 0; }
.gcd-search { border-top: 1px solid var(--line); background: var(--cream); padding: 16px 0; }
.gcd-searchform { display: flex; gap: 8px; max-width: 640px; margin: 0 auto; }
.gcd-searchform input { flex: 1; min-width: 0; font: inherit; border: 1px solid var(--line); padding: 10px 14px; background: #fff; }

/* Card */
.gcd-card { min-width: 0; }
.gcd-card__link { display: block; }
.gcd-card__media { aspect-ratio: 4 / 3; overflow: hidden; background: var(--cream); }
.gcd-card__img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.gcd-card__link:hover .gcd-card__img { transform: scale(1.04); }
.gcd-card__body .gcd-kicker { margin-top: 12px; }
.gcd-card__title { font-size: 23px; line-height: 1.2; margin: 8px 0 6px; }
.gcd-card__excerpt { margin: 0; color: var(--ink-2); font-size: 15px; }
.gcd-card__body .gcd-meta { margin: 6px 0 0; }
.gcd-card__link:hover .gcd-card__title { color: var(--sage-dk); }

/* Home: hero */
.gcd-hero { display: grid; grid-template-columns: 1.45fr 1fr; gap: 48px; align-items: center; margin-top: 40px; }
.gcd-hero__media { display: block; aspect-ratio: 5 / 4; overflow: hidden; background: var(--cream); }
.gcd-hero__img { width: 100%; height: 100%; object-fit: cover; }
.gcd-hero__title { font-size: 58px; line-height: 1.02; margin: 12px 0 16px; }
.gcd-hero__excerpt { font-size: 19px; color: var(--ink-2); margin: 0 0 22px; }
.gcd-hero__side { border-top: 1px solid var(--line); margin-top: 28px; padding-top: 18px; display: grid; gap: 14px; }
.gcd-hero__item { display: grid; grid-template-columns: 76px 1fr; gap: 14px; align-items: center; }
.gcd-hero__thumb { width: 76px; height: 60px; object-fit: cover; aspect-ratio: auto; min-height: 0; }
.gcd-hero__item b { display: block; font: 600 19px/1.2 var(--serif); }

/* Home: fascia crema (momenti + stagione) */
.gcd-season-band { background: var(--cream); margin-top: 64px; padding: 8px 0 56px; }
.gcd-season-band .gcd-sec-head { margin-top: 40px; }
.gcd-moments { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
.gcd-moment { position: relative; aspect-ratio: 3 / 4; overflow: hidden; color: #fff; background: var(--sage-dk); display: block; }
.gcd-moment__img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.gcd-moment:hover .gcd-moment__img { transform: scale(1.04); }
.gcd-moment::after { content: ""; position: absolute; inset: 0; background: linear-gradient(transparent 40%, #000a); }
.gcd-moment__text { position: absolute; left: 16px; right: 16px; bottom: 16px; z-index: 1; }
.gcd-moment__text b { display: block; font: 600 24px/1.1 var(--serif); }
.gcd-moment__text small { font-size: 12px; letter-spacing: 1.5px; text-transform: uppercase; opacity: .85; }
.gcd-moment:hover { color: #fff; }

/* Home: rubriche */
.gcd-rubriche { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.gcd-rubriche a { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 20px 22px; }
.gcd-rubriche a:hover { background: var(--cream); color: var(--ink); }
.gcd-rubriche b { display: block; font: 600 22px/1.15 var(--serif); }
.gcd-rubriche small { color: var(--ink-2); font-size: 13px; }

/* Home: fascia Vetrina */
.gcd-vetrina-band { background: var(--ink); color: #fff; margin-top: 72px; }
.gcd-vetrina-band__inner { display: grid; grid-template-columns: 1fr 1.2fr; gap: 56px; align-items: center; padding-top: 56px; padding-bottom: 56px; }
.gcd-vetrina-band h2 { font-size: 44px; line-height: 1.05; margin: 10px 0 14px; }
.gcd-vetrina-band .gcd-kicker { color: #b9cbb0; }
.gcd-vetrina-band p { color: #d9d3cb; margin: 0 0 22px; }
.gcd-shopcard { background: #fff; color: var(--ink); display: grid; grid-template-columns: 1fr 1fr; }
.gcd-shopcard:hover { color: var(--ink); }
.gcd-shopcard__media { position: relative; overflow: hidden; background: var(--cream); min-height: 260px; }
.gcd-shopcard__media .gcd-card__img, .gcd-shopcard__media .gcd-ph { position: absolute; inset: 0; height: 100%; width: 100%; object-fit: cover; aspect-ratio: auto; }
.gcd-shopcard__body { padding: 24px; }
.gcd-shop__title { font-size: 28px; line-height: 1.1; margin: 6px 0 10px; }
.gcd-shop__addr { color: var(--ink-2); margin: 0 0 10px; font-size: 15px; }
.gcd-shop__reviews { display: inline-flex; align-items: center; gap: 4px; }

/* Home: Accadde a */
.gcd-ago__link { display: block; }
.gcd-ago__year { display: block; font: 600 54px/1 var(--serif); color: var(--sage); }
.gcd-ago__title { font-size: 23px; line-height: 1.2; margin: 10px 0 6px; }
.gcd-ago .gcd-meta { margin: 0; }
.gcd-ago__link:hover .gcd-ago__title { color: var(--sage-dk); }

/* Footer */
.gcd-footer { background: var(--cream); margin-top: 80px; border-top: 1px solid var(--line); }
.gcd-footer__inner { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 40px; padding-top: 48px; padding-bottom: 40px; }
.gcd-footer__brand p { margin: 12px 0 0; color: var(--ink-2); font-size: 15px; }
.gcd-footer__title { font: 700 12px var(--sans); letter-spacing: 2px; text-transform: uppercase; margin: 0 0 12px; }
.gcd-footer ul { list-style: none; margin: 0; padding: 0; font-size: 15px; line-height: 2; }
.gcd-footer__legal { grid-column: 1 / -1; border-top: 1px solid var(--line); padding-top: 18px; font-size: 13px; color: var(--ink-2); display: flex; justify-content: space-between; flex-wrap: wrap; gap: 10px; }
.gcd-footer__legal-list { display: flex; flex-wrap: wrap; gap: 0 6px; line-height: 1.6; }
.gcd-footer__legal-list li + li::before { content: "· "; }

/* Testata pagina/archivio */
.gcd-page-head { text-align: center; max-width: 760px; margin: 36px auto 0; }
.gcd-page-head h1 { font-size: 62px; line-height: 1; margin: 12px 0 14px; }
.gcd-page-head p, .gcd-page-head__desc { font-size: 19px; color: var(--ink-2); margin: 0 0 10px; }
.gcd-page-head .gcd-meta { font-size: 13px; }
.gcd-page-head .gcd-searchform { margin-top: 20px; }
.gcd-filters { display: flex; justify-content: center; gap: 8px; flex-wrap: wrap; margin: 24px 0 8px; }
.gcd-filters a { border: 1px solid var(--line); padding: 7px 16px; border-radius: 99px; font-size: 14px; }
.gcd-filters a small { color: var(--ink-2); font-size: 12px; }
.gcd-filters a.is-on, .gcd-filters a:hover { background: var(--ink); color: #fff; border-color: var(--ink); }
.gcd-filters a:hover small, .gcd-filters a.is-on small { color: #cfc8bf; }
.gcd-page-head + .gcd-grid, .gcd-filters + .gcd-grid { margin-top: 36px; }

/* Articolo */
.gcd-crumbs { font-size: 13px; color: var(--ink-2); margin: 28px 0 0; }
.gcd-crumbs a { text-decoration: underline; text-underline-offset: 3px; }
.gcd-post-head { max-width: 860px; margin: 18px auto 0; text-align: center; }
.gcd-post-head__title { font-size: 60px; line-height: 1.04; margin: 14px 0 16px; }
.gcd-post-head__dek { font: 500 italic 24px/1.4 var(--serif); color: var(--ink-2); margin: 0 0 18px; }
.gcd-post-head__meta { margin: 0; }
.gcd-post-head__meta a:hover { text-decoration: underline; }
.gcd-post-hero { margin: 34px auto 0; max-width: 1000px; }
.gcd-post-hero__img { width: 100%; max-height: 640px; object-fit: cover; }
.gcd-post-hero figcaption { font-size: 13px; color: var(--ink-2); margin-top: 8px; text-align: center; }
.gcd-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 64px; margin-top: 48px; }
.gcd-layout__main { min-width: 0; }
.gcd-content { font-size: 19px; line-height: 1.75; max-width: 700px; }
.gcd-content--page { max-width: none; margin-top: 36px; }
.gcd-content--intro { margin-top: 0; text-align: center; }
.gcd-content > p:first-child::first-letter { float: left; font: 600 78px/.8 var(--serif); margin: 8px 10px 0 0; color: var(--sage-dk); }
.gcd-content--page > p:first-child::first-letter, .gcd-content--scheda > p:first-child::first-letter { font-size: 60px; }
.gcd-content p { margin: 0 0 1.2em; }
.gcd-content a { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--sage); }
.gcd-content h2 { font-size: 32px; line-height: 1.2; margin: 40px 0 10px; }
.gcd-content h3 { font-size: 26px; margin: 32px 0 8px; }
.gcd-content h4 { font-size: 21px; margin: 24px 0 6px; }
.gcd-content blockquote { margin: 30px 0; padding: 0 0 0 24px; border-left: 3px solid var(--sage); font: 500 italic 26px/1.35 var(--serif); }
.gcd-content blockquote p { margin: 0; }
.gcd-content figure, .gcd-content .wp-caption { margin: 32px 0; max-width: 100%; }
.gcd-content figcaption, .gcd-content .wp-caption-text { font-size: 13px; color: var(--ink-2); margin-top: 6px; text-align: center; }
.gcd-content img { height: auto; }
.gcd-content img.aligncenter, .gcd-content .aligncenter { margin-left: auto; margin-right: auto; }
.gcd-content .alignleft { float: left; margin: 6px 24px 12px 0; max-width: 45%; }
.gcd-content .alignright { float: right; margin: 6px 0 12px 24px; max-width: 45%; }
.gcd-content .alignnone { margin-bottom: 1em; }
.gcd-content p img { display: inline-block; vertical-align: middle; }
.gcd-content p img.alignleft, .gcd-content p img.alignright, .gcd-content p img.aligncenter { display: block; }
.gcd-content ul, .gcd-content ol { padding-left: 1.4em; margin: 0 0 1.2em; }
.gcd-content li { margin-bottom: .3em; }
.gcd-content hr { border: 0; border-top: 1px solid var(--line); margin: 36px 0; }
.gcd-content table { width: 100%; border-collapse: collapse; font-size: 16px; margin: 0 0 1.5em; }
.gcd-content th, .gcd-content td { border-bottom: 1px solid var(--line); padding: 8px 10px; text-align: left; vertical-align: top; }
.gcd-content iframe, .gcd-content object, .gcd-content embed, .gcd-content video { max-width: 100%; }
.gcd-content .wp-video, .gcd-content .wp-embedded-content { max-width: 100%; }
.gcd-content .gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; margin: 32px 0; }
.gcd-content .gallery-item { margin: 0; }
.gcd-content .gallery-item img { width: 100%; aspect-ratio: 1; object-fit: cover; border: 0 !important; }
.gcd-content .gallery-caption { font-size: 12px; color: var(--ink-2); }
.gcd-content [style*="float"] { max-width: 50%; }
.gcd-content::after, .gcd-content--page::after { content: ""; display: table; clear: both; }
.gcd-content .wp-caption { width: auto !important; max-width: 100%; }
.gcd-content .wp-caption.alignleft, .gcd-content .wp-caption.alignright { max-width: 45%; }
.gcd-pages { margin: 20px 0; font-size: 15px; }
.gcd-tags { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 32px; }
.gcd-tags a { border: 1px solid var(--line); padding: 4px 12px; border-radius: 99px; font-size: 13px; }
.gcd-tags a:hover { background: var(--cream); color: var(--ink); }
.gcd-share { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin: 28px 0; padding: 16px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 14px; }
.gcd-share__link { display: inline-flex; align-items: center; gap: 5px; border: 1px solid var(--line); padding: 5px 12px; font-size: 14px; }
.gcd-share__link:hover { border-color: var(--sage-dk); color: var(--sage-dk); }
.gcd-copy.is-done { border-color: var(--sage-dk); color: var(--sage-dk); }
.gcd-author { display: grid; grid-template-columns: 72px 1fr; gap: 18px; background: var(--cream); padding: 22px; margin: 36px 0; }
.gcd-author__img { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; }
.gcd-author__name { font-size: 17px; }
.gcd-author__bio { margin: 4px 0 0; font-size: 15px; color: var(--ink-2); }
.gcd-related .gcd-card__title { font-size: 20px; }

/* Barra laterale */
.gcd-sidebar { min-width: 0; }
.gcd-box { margin-bottom: 40px; }
.gcd-box__title { font: 700 12px var(--sans); letter-spacing: 2px; text-transform: uppercase; border-bottom: 1px solid var(--ink); padding-bottom: 8px; margin: 0 0 16px; }
.gcd-box__more { display: inline-block; margin-top: 4px; font: 600 12px var(--sans); letter-spacing: 1px; text-transform: uppercase; color: var(--ink-2); }
.gcd-li { display: grid; grid-template-columns: 84px 1fr; gap: 14px; margin-bottom: 16px; align-items: center; }
.gcd-li__img { width: 84px; height: 66px; object-fit: cover; aspect-ratio: auto; min-height: 0; }
.gcd-li b { font: 600 18px/1.2 var(--serif); }
.gcd-ranked { list-style: none; margin: 0; padding: 0; }
.gcd-num { display: grid; grid-template-columns: 34px 1fr; gap: 8px; margin-bottom: 14px; align-items: start; }
.gcd-num i { font: 600 32px/1 var(--serif); color: var(--sage); font-style: normal; }
.gcd-num--year i { font-size: 22px; line-height: 1.3; }
.gcd-num b { font: 600 18px/1.2 var(--serif); }
.gcd-vbox { background: var(--cream); padding: 22px; }
.gcd-vbox__img { aspect-ratio: 16 / 10; object-fit: cover; margin-bottom: 12px; width: 100%; }
.gcd-vbox__title { font: 600 22px/1.15 var(--serif); display: block; }
.gcd-vbox__text { font-size: 14px; color: var(--ink-2); margin: 6px 0 12px; }
.gcd-widget ul { list-style: none; margin: 0; padding: 0; font-size: 15px; line-height: 1.9; }

/* Commenti e recensioni */
.gcd-comments { margin-top: 48px; }
.gcd-comments__title { font-size: 30px; margin: 48px 0 18px; }
.gcd-comments__list, .gcd-comments__list .children { list-style: none; margin: 0; padding: 0; }
.gcd-comments__list .children { padding-left: 32px; }
.gcd-comments__list .comment, .gcd-comments__list .pingback { border-top: 1px solid var(--line); padding: 18px 0; }
.comment-meta { font-size: 15px; }
.comment-author .fn { font-weight: 600; font-style: normal; }
.comment-metadata { font-size: 13px; color: var(--ink-2); }
.comment-metadata a:hover { text-decoration: underline; }
.comment-content { font-size: 16px; }
.comment-content p { margin: 6px 0 0; }
.comment-reply-link { font: 600 12px var(--sans); letter-spacing: 1px; text-transform: uppercase; color: var(--ink-2); }
.comment-respond { margin-top: 28px; max-width: 700px; }
.comment-respond label { display: block; font: 700 11.5px var(--sans); letter-spacing: 1.8px; text-transform: uppercase; color: var(--ink-2); margin-bottom: 4px; }
.comment-respond textarea, .comment-respond input[type="text"], .comment-respond input[type="email"], .comment-respond input[type="url"] { width: 100%; font: inherit; border: 1px solid var(--line); padding: 12px; margin-bottom: 10px; background: #fff; }
.comment-notes, .logged-in-as { font-size: 14px; color: var(--ink-2); }
.comment-form-cookies-consent { display: flex; gap: 8px; align-items: center; font-size: 14px; }
.comment-form-cookies-consent label { display: inline; font: inherit; letter-spacing: 0; text-transform: none; }
.gcd-comments .comment-form .submit { margin-top: 6px; }
.gcd-reviews { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.gcd-review { background: var(--cream); padding: 24px; margin: 0; }
.gcd-review p { font: 500 italic 21px/1.35 var(--serif); margin: 0 0 12px; }
.gcd-review footer b { font-size: 14px; }
.gcd-comments--reviews .comment-respond { margin-top: 36px; }

/* Vetrina: card */
.gcd-shop { border: 1px solid var(--line); display: block; }
.gcd-shop:hover { color: var(--ink); }
.gcd-shop__media { aspect-ratio: 16 / 10; }
.gcd-shop__media .gcd-ph { aspect-ratio: 16 / 10; }
.gcd-shop__body { padding: 20px 22px; }
.gcd-shop .gcd-shop__title { font-size: 27px; margin: 6px 0 8px; }
.gcd-shop__addr { font-size: 14.5px; }
.gcd-shop--empty { display: flex; align-items: center; justify-content: center; text-align: center; background: var(--cream); border-style: dashed; padding: 30px; min-height: 330px; }
.gcd-shop--empty b { font: 600 26px/1.15 var(--serif); display: block; margin-bottom: 8px; }
.gcd-shop--empty p { color: var(--ink-2); font-size: 15px; margin: 0 0 16px; }

/* Vetrina: scheda */
.gcd-scheda__top { display: grid; grid-template-columns: 1.3fr 1fr; gap: 48px; margin-top: 28px; align-items: start; }
.gcd-scheda__media { aspect-ratio: 4 / 3; overflow: hidden; background: var(--cream); }
.gcd-scheda__img { width: 100%; height: 100%; object-fit: cover; }
.gcd-scheda__title { font-size: 56px; line-height: 1.02; margin: 10px 0 14px; }
.gcd-scheda__dek { font: 500 italic 22px/1.4 var(--serif); color: var(--ink-2); margin: 0; }
.gcd-facts { border-top: 1px solid var(--ink); margin: 24px 0 0; }
.gcd-facts div { display: grid; grid-template-columns: 120px 1fr; padding: 12px 0; border-bottom: 1px solid var(--line); font-size: 16px; }
.gcd-facts dt { font: 700 11.5px var(--sans); letter-spacing: 1.8px; text-transform: uppercase; color: var(--ink-2); padding-top: 4px; }
.gcd-facts dd { margin: 0; }
.gcd-facts dd a { text-decoration: underline; text-underline-offset: 3px; }
.gcd-scheda__actions { display: flex; gap: 10px; margin-top: 22px; flex-wrap: wrap; }
.gcd-scheda__body { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 64px; margin-top: 56px; }
.gcd-mapbox { aspect-ratio: 16 / 11; background: repeating-linear-gradient(45deg, #eef0ea 0 12px, #e6e9e1 12px 24px); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; font-size: 14px; color: var(--ink-2); padding: 20px; gap: 8px; }
.gcd-mapbox p { margin: 0; }
.gcd-mapbox .gcd-btn { background: #fff; }
.gcd-gallery { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 40px; }
.gcd-gallery img { aspect-ratio: 1; object-fit: cover; width: 100%; }

/* Archivio */
.gcd-years { display: flex; justify-content: center; margin: 36px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.gcd-years a { padding: 16px 22px; text-align: center; border-right: 1px solid var(--line); flex: 0 0 auto; }
.gcd-years a:first-child { border-left: 1px solid var(--line); }
.gcd-years b { display: block; font: 600 34px/1 var(--serif); }
.gcd-years small { color: var(--ink-2); font-size: 12.5px; white-space: nowrap; }
.gcd-years a.is-on, .gcd-years a:hover { background: var(--ink); color: #fff; }
.gcd-years a.is-on small, .gcd-years a:hover small { color: #cfc8bf; }
.gcd-months { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px 40px; }
.gcd-month h2 { font-size: 26px; margin: 0 0 8px; border-bottom: 1px solid var(--line); padding-bottom: 6px; display: flex; justify-content: space-between; align-items: baseline; }
.gcd-month h2 small { font: 400 13px var(--sans); color: var(--ink-2); }
.gcd-month ul { list-style: none; padding: 0; margin: 0; }
.gcd-month li { margin-bottom: 6px; font-size: 15.5px; line-height: 1.35; }
.gcd-rub-index { display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; }
.gcd-rub-index h3 { font: 700 12px var(--sans); letter-spacing: 2px; text-transform: uppercase; border-bottom: 1px solid var(--ink); padding-bottom: 8px; }
.gcd-rub-index ul { list-style: none; padding: 0; margin: 0; }
.gcd-rub-index li { display: flex; justify-content: space-between; gap: 10px; border-bottom: 1px solid var(--line); padding: 9px 0; font: 600 20px/1.2 var(--serif); }
.gcd-rub-index li small { font: 400 13px var(--sans); color: var(--ink-2); }

/* 404 */
.gcd-404 .gcd-page-head { margin-top: 64px; }
.gcd-404__links { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; margin-top: 20px; }

/* Impaginazione */
.pagination { margin: 48px 0 0; text-align: center; }
.pagination .screen-reader-text { position: absolute; }
.nav-links { display: inline-flex; gap: 6px; flex-wrap: wrap; justify-content: center; }
.page-numbers { display: inline-block; padding: 8px 14px; border: 1px solid var(--line); font: 600 13px var(--sans); letter-spacing: 1px; text-transform: uppercase; }
.page-numbers.current, .page-numbers:hover { background: var(--ink); color: #fff; border-color: var(--ink); }
.page-numbers.dots { border: 0; }
.comment-navigation, .comments-pagination { margin-top: 16px; }

/* Portatili piccoli: menu più compatto, resta su una riga */
@media (max-width: 1180px) and (min-width: 901px) {
	.gcd-nav__list > li > a, .gcd-navbar__btn { padding-left: 9px; padding-right: 9px; font-size: 12px; letter-spacing: 1.1px; }
}

/* Tablet */
@media (max-width: 1000px) {
	.gcd-layout, .gcd-scheda__body { grid-template-columns: 1fr; gap: 40px; }
	.gcd-sidebar { border-top: 1px solid var(--line); padding-top: 32px; }
	.gcd-footer__inner { grid-template-columns: 1fr 1fr; }
	.gcd-months, .gcd-rub-index { grid-template-columns: 1fr 1fr; }
}

/* Telefono e tablet piccolo */
@media (max-width: 900px) {
	body { font-size: 16px; }
	.gcd-logo__name { font-size: 34px; }
	.gcd-logo__img { width: 48px; height: 48px; }
	.gcd-brand { padding: 20px 0 14px; }
	.gcd-menu-toggle { display: inline-flex; }
	.gcd-navbar__inner { justify-content: space-between; }
	.gcd-nav { display: none; position: absolute; left: 0; right: 0; top: 100%; background: #fff; border-bottom: 1px solid var(--line); z-index: 30; box-shadow: 0 16px 30px #0000001a; max-height: calc(100vh - 160px); overflow: auto; }
	.gcd-nav.is-open { display: block; }
	.gcd-nav__list { display: block; padding: 8px var(--gutter) 16px; }
	.gcd-nav__list > li { display: flex; flex-wrap: wrap; align-items: center; border-top: 1px solid var(--line); }
	.gcd-nav__list > li > a { flex: 1; padding: 12px 0; }
	.gcd-sub-toggle { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; color: var(--ink-2); }
	.gcd-sub-toggle[aria-expanded="true"] .gcd-icon { transform: rotate(180deg); }
	.gcd-nav__list .sub-menu, .gcd-nav__list > li:hover > .sub-menu, .gcd-nav__list > li:focus-within > .sub-menu { display: none; position: static; flex-basis: 100%; border: 0; box-shadow: none; padding: 0 0 10px 14px; min-width: 0; columns: auto !important; }
	.gcd-nav__list > li.is-open > .sub-menu { display: block; }
	.gcd-nav__list .sub-menu a { padding: 6px 0; }
	.gcd-hero, .gcd-scheda__top, .gcd-vetrina-band__inner, .gcd-shopcard { grid-template-columns: 1fr; }
	.gcd-hero { gap: 24px; margin-top: 24px; }
	.gcd-hero__title, .gcd-post-head__title, .gcd-page-head h1, .gcd-scheda__title { font-size: 40px; }
	.gcd-vetrina-band h2 { font-size: 36px; }
	.gcd-sec-head { margin-top: 48px; }
	.gcd-sec-head h2 { font-size: 28px; }
	.gcd-grid--3, .gcd-grid--4, .gcd-reviews { grid-template-columns: 1fr 1fr; gap: 24px; }
	.gcd-moments { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; padding-bottom: 6px; scrollbar-width: thin; }
	.gcd-moment { flex: 0 0 68%; scroll-snap-align: start; }
	.gcd-rubriche { grid-template-columns: 1fr 1fr; }
	.gcd-years { overflow-x: auto; justify-content: flex-start; scrollbar-width: thin; }
	.gcd-gallery { grid-template-columns: repeat(2, 1fr); }
	.gcd-content { font-size: 17px; }
	.gcd-content .alignleft, .gcd-content .alignright, .gcd-content .wp-caption.alignleft, .gcd-content .wp-caption.alignright { max-width: 50%; }
	.gcd-post-head__dek { font-size: 20px; }
	.gcd-topbar__text { display: none; }
}

@media (max-width: 560px) {
	:root { --gutter: 16px; }
	.gcd-grid--3, .gcd-grid--4, .gcd-reviews, .gcd-rubriche, .gcd-months, .gcd-rub-index, .gcd-footer__inner { grid-template-columns: 1fr; }
	.gcd-content .alignleft, .gcd-content .alignright, .gcd-content .wp-caption.alignleft, .gcd-content .wp-caption.alignright, .gcd-content [style*="float"] { float: none; max-width: 100%; margin-left: 0; margin-right: 0; }
	.gcd-hero__title { font-size: 34px; }
	.gcd-post-head__title, .gcd-page-head h1, .gcd-scheda__title { font-size: 34px; }
	.gcd-content > p:first-child::first-letter { font-size: 60px; }
	.gcd-facts div { grid-template-columns: 96px 1fr; }
	.gcd-searchform { flex-direction: column; }
	.gcd-topbar__inner { justify-content: center; }
	.gcd-footer__legal { flex-direction: column; }
	.gcd-ago__year { font-size: 44px; }
}

@media print {
	.gcd-navbar, .gcd-topbar, .gcd-share, .gcd-sidebar, .gcd-footer, .comment-respond { display: none !important; }
}

/* Vetrina: bollino, rivendica, segnala, moduli */
.gcd-badge { display: inline-flex; align-items: center; gap: 6px; font: 600 12px/1 var(--sans); letter-spacing: 1px; text-transform: uppercase; color: var(--sage-dk); border: 1px solid var(--sage-dk); padding: 7px 10px; margin: 0 0 12px; }
.gcd-filters a small { font-size: 11px; color: var(--ink-2); margin-left: 2px; }
.gcd-filters a.is-on small { color: #cfd8c9; }
.gcd-shop__award { display: block; font: 600 12px/1.3 var(--sans); letter-spacing: .8px; text-transform: uppercase; color: var(--sage-dk); margin: -4px 0 8px; }
.gcd-claim { margin-top: 56px; }
.gcd-claim__box { border: 1px solid var(--line); background: var(--cream); padding: 0; }
.gcd-claim__box summary { list-style: none; cursor: pointer; padding: 24px 28px; display: grid; gap: 6px; }
.gcd-claim__box summary::-webkit-details-marker { display: none; }
.gcd-claim__box summary b { font: 600 26px/1.15 var(--serif); }
.gcd-claim__box summary b::after { content: " +"; color: var(--sage-dk); }
.gcd-claim__box[open] summary b::after { content: " –"; }
.gcd-claim__hint { color: var(--ink-2); font-size: 15px; }
.gcd-claim__box .gcd-form { padding: 0 28px 28px; }
.gcd-segnala { margin-top: 64px; }
.gcd-segnala--compact { margin-top: 32px; }
.gcd-segnala__intro { color: var(--ink-2); font-size: 17px; max-width: 70ch; margin: -8px 0 20px; }
.gcd-form { max-width: 760px; }
.gcd-form p { margin: 0 0 12px; }
.gcd-form label { display: block; font: 600 12px/1.4 var(--sans); letter-spacing: 1px; text-transform: uppercase; margin-bottom: 5px; }
.gcd-form input[type="text"], .gcd-form input[type="email"], .gcd-form input[type="url"], .gcd-form input[type="tel"], .gcd-form textarea { width: 100%; font: inherit; border: 1px solid var(--line); padding: 12px; background: #fff; }
.gcd-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; }
.gcd-form__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.gcd-form__note { color: var(--ink-2); font-size: 13.5px; }
.gcd-notice { display: none; padding: 14px 18px; margin: 0 0 20px; font-size: 15px; border-left: 3px solid var(--sage-dk); background: var(--cream); }
.gcd-notice--err { border-left-color: #b4452f; }
.gcd-notice:target { display: block; }
.gcd-form select { width: 100%; font: inherit; border: 1px solid var(--line); padding: 12px; background: #fff; }
.gcd-segnala-elenco { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 32px 0; }
.gcd-segnala-elenco__item { display: flex; flex-direction: column; gap: 8px; background: var(--cream); padding: 24px; border: 1px solid var(--line); }
.gcd-segnala-elenco__item b { font: 600 24px/1.15 var(--serif); }
.gcd-segnala-elenco__item p { margin: 0; color: var(--ink-2); font-size: 15px; flex: 1; }
.gcd-segnala-elenco__more { font: 600 12px var(--sans); letter-spacing: 1px; text-transform: uppercase; color: var(--sage-dk); }
.gcd-segnala-elenco__item:hover { background: #fff; color: var(--ink); }
@media (max-width: 900px) { .gcd-segnala-elenco { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .gcd-segnala-elenco { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .gcd-form__row { grid-template-columns: 1fr; } .gcd-claim__box summary, .gcd-claim__box .gcd-form { padding-left: 18px; padding-right: 18px; } }

/* Home: box Segnala la tua pasticceria preferita */
.gcd-propose { margin-top: 72px; background: var(--cream); border: 1px solid var(--line); display: grid; grid-template-columns: 1.4fr 1fr; gap: 40px; align-items: center; padding: 44px 48px; }
.gcd-propose h2 { font-size: 40px; line-height: 1.05; margin: 10px 0 12px; }
.gcd-propose p { color: var(--ink-2); margin: 0; font-size: 17px; max-width: 60ch; }
.gcd-propose__actions { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; justify-self: end; }
.gcd-propose__link { font-size: 14.5px; color: var(--ink-2); text-decoration: underline; text-underline-offset: 3px; }
.gcd-propose__link:hover { color: var(--sage-dk); }
@media (max-width: 900px) { .gcd-propose { grid-template-columns: 1fr; padding: 32px 24px; margin-top: 48px; } .gcd-propose h2 { font-size: 32px; } .gcd-propose__actions { justify-self: start; } }

/* Newsletter (footer, fondo articolo, shortcode) */
.gcd-footer__inner--newsletter { grid-template-columns: 1.2fr 0.8fr 0.8fr 1.5fr; }
.gcd-newsletter__title { font: 600 26px/1.15 var(--serif); margin: 0 0 8px; }
.gcd-newsletter__text { color: var(--ink-2); font-size: 15px; margin: 0 0 16px; }
.gcd-newsletter__row { display: flex; gap: 0; }
.gcd-newsletter__row input[type="email"] { flex: 1 1 auto; min-width: 0; font: inherit; font-size: 15px; border: 1px solid var(--ink); border-right: 0; padding: 0 14px; background: #fff; height: 46px; }
.gcd-newsletter__row .gcd-btn { height: 46px; padding: 0 20px; white-space: nowrap; }
.gcd-newsletter__field { margin: 0 0 12px; }
.gcd-newsletter__field label { display: block; font: 600 12px/1.4 var(--sans); letter-spacing: 1px; text-transform: uppercase; margin-bottom: 5px; }
.gcd-newsletter__field input { width: 100%; font: inherit; font-size: 15px; border: 1px solid var(--line); padding: 10px 14px; background: #fff; }
.gcd-newsletter__consent { margin: 12px 0 0; font-size: 13.5px; line-height: 1.5; color: var(--ink-2); }
.gcd-newsletter__consent label { display: flex; gap: 8px; align-items: flex-start; cursor: pointer; }
.gcd-newsletter__consent input { margin: 4px 0 0; accent-color: var(--sage-dk); flex: 0 0 auto; }
.gcd-newsletter__consent a { text-decoration: underline; text-underline-offset: 2px; }
.gcd-newsletter__social { margin: 18px 0 0; font-size: 14px; display: flex; flex-wrap: wrap; gap: 0 10px; }
.gcd-newsletter__social span { color: var(--ink-2); }
.gcd-newsletter__social a { font-weight: 600; }
.gcd-newsletter .gcd-notice { margin: 0 0 14px; }
.gcd-newsletter--post, .gcd-newsletter--page { background: var(--cream); border: 1px solid var(--line); padding: 32px 36px; margin: 40px 0 0; }
.gcd-newsletter--post .gcd-newsletter__title, .gcd-newsletter--page .gcd-newsletter__title { font-size: 32px; margin: 8px 0 10px; }
.gcd-newsletter--post .gcd-newsletter__text, .gcd-newsletter--page .gcd-newsletter__text { font-size: 16px; max-width: 60ch; }
.gcd-newsletter--post .gcd-newsletter__form, .gcd-newsletter--page .gcd-newsletter__form { max-width: 560px; }
.gcd-newsletter--post .gcd-newsletter__row input, .gcd-newsletter--page .gcd-newsletter__row input { border-color: var(--line); border-right: 0; }
.gcd-esito { padding: 64px 0 24px; text-align: center; }
.gcd-esito h1 { font-size: 48px; margin: 10px 0 16px; }
.gcd-esito p { color: var(--ink-2); font-size: 18px; max-width: 56ch; margin: 0 auto 24px; }
@media (max-width: 900px) { .gcd-footer__inner--newsletter { grid-template-columns: 1fr 1fr; } .gcd-footer__col--newsletter { grid-column: 1 / -1; max-width: 520px; } }
@media (max-width: 560px) { .gcd-newsletter--post, .gcd-newsletter--page { padding: 24px 18px; } .gcd-newsletter--post .gcd-newsletter__title, .gcd-newsletter--page .gcd-newsletter__title { font-size: 27px; } .gcd-esito h1 { font-size: 36px; } }
