/*
Theme Name: Nook
Theme URI: https://thenooktools.com
Author: Nook
Description: Tema de blocos para o blog de decoração Nook — riscas verdes, cartões de papel e títulos em itálico. Tudo se edita no editor do WordPress, sem código.
Version: 1.0.2
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: nook-decor
*/

/* ============================================================
   NOOK — a decor journal
   Editorial layout: striped sage backdrop, paper cards, italic serif.
   ============================================================ */

:root{
  /* Colour — sage/forest green in place of rose */
  --stripe-a:   #FCFBF9;
  --stripe-b:   #E6EEE1;
  --cream:      #FBF8F2;
  --paper:      #F7F2E7;
  --white:      #FFFFFF;
  --ink:        #2C5A44;   /* headings, buttons — 7.5:1 on cream */
  --ink-deep:   #22463A;
  --body:       #343332;   /* 11.9:1 on cream */
  --muted:      #6B655E;   /* 5.4:1 on cream */
  --accent:     #46744F;   /* small accent text — 5.1:1 on cream */
  --leaf:       #7FA383;   /* decorative only */
  --leaf-soft:  #CFDDC9;
  --line:       rgba(44, 90, 68, .22);

  --font-display: 'Cormorant Garamond', 'Iowan Old Style', Georgia, serif;
  --font-body:    'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono:    'Space Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;

  --edge: 102px;   /* page gutter (70) + card inset (32) */
  --shadow-card: 0 2px 6px rgba(52,51,50,.07), 0 10px 28px -20px rgba(52,51,50,.32);
  --shadow-lift: 0 4px 10px rgba(52,51,50,.08), 0 22px 40px -22px rgba(52,51,50,.4);
  --ease: cubic-bezier(.22,.7,.28,1);

  --paper-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .32 0 0 0 0 .3 0 0 0 0 .22 0 0 0 .075 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------- Reset ---------- */
*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body{
  margin:0;
  font-family:var(--font-body);
  font-size:16px;
  line-height:1.6;
  color:var(--body);
  background-color:var(--stripe-a);
  background-image:linear-gradient(90deg, var(--stripe-a) 0 25%, var(--stripe-b) 25% 75%, var(--stripe-a) 75% 100%);
  background-size:110px 100%;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img,svg{ display:block; max-width:100%; }
img{ height:auto; }
a{ color:inherit; text-decoration:none; }
h1,h2,h3,p,figure,blockquote,ul,ol{ margin:0; padding:0; }
ul,ol{ list-style:none; }
button,input,textarea{ font:inherit; color:inherit; }
button{ cursor:pointer; }

:focus-visible{ outline:2px solid var(--ink); outline-offset:3px; border-radius:2px; }
.skip-link{
  position:absolute; left:16px; top:-64px; z-index:200;
  background:var(--ink); color:var(--cream); padding:12px 18px;
  font:400 13px/1 var(--font-mono); letter-spacing:.08em; text-transform:uppercase;
}
.skip-link:focus{ top:16px; }
.sr-only{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }

/* ---------- Type ---------- */
.display-1,.display-2,.display-3{
  font-family:var(--font-display); font-style:italic; font-weight:500;
  color:var(--ink); letter-spacing:-.04em;
}
.display-1{ font-size:clamp(2.35rem, .9rem + 6.2vw, 5rem); line-height:.98; }
.display-2{ font-size:clamp(2.5rem, 1.5rem + 3.6vw, 4rem); line-height:1.05; }
.display-3{ font-size:clamp(1.9rem, 1.4rem + 1.6vw, 2.5rem); line-height:1.1; letter-spacing:-.03em; }
.eyebrow{
  font:400 13px/1.4 var(--font-mono); letter-spacing:.08em; text-transform:uppercase;
  color:var(--accent);
}
.lead{ font-size:clamp(1.125rem, 1rem + .5vw, 1.25rem); line-height:1.45; letter-spacing:-.02em; }
.copy{ font-size:1rem; line-height:1.6; letter-spacing:-.01em; }
.copy + .copy{ margin-top:1.1em; }

/* mono link with arrow */
.mono-link{
  display:inline-flex; align-items:center; gap:10px; min-height:44px;
  font:400 13px/1 var(--font-mono); letter-spacing:.08em; text-transform:uppercase;
  color:var(--ink);
}
.mono-link span{ background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat; padding-bottom:3px; transition:background-size .3s var(--ease); }
.mono-link:hover span,.mono-link:focus-visible span{ background-size:100% 1px; }
.mono-link svg{ width:16px; height:16px; transition:transform .3s var(--ease); flex:none; }
.mono-link:hover svg{ transform:translateX(4px); }

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:16px 32px;
  background:var(--ink); color:var(--cream); border:0; border-radius:2px;
  font:400 14px/1 var(--font-mono); letter-spacing:.08em; text-transform:uppercase;
  transition:background .25s var(--ease), transform .25s var(--ease);
}
.btn:hover{ background:var(--ink-deep); }
.btn:active{ transform:translateY(1px); }
.btn[disabled]{ background:rgba(44,90,68,.1); color:var(--ink); box-shadow:inset 0 0 0 1px rgba(44,90,68,.35); cursor:not-allowed; }
.btn--sm{ min-height:44px; padding:12px 22px; }

/* ---------- Layout ---------- */

.block{ padding-top:64px; }
.paper{
  position:relative;
  background-color:var(--paper);
  background-image:var(--paper-grain);
  border-radius:2px;
  box-shadow:var(--shadow-card);
}

/* ---------- Hero ---------- */
.hero{ padding-top:24px; }
.hero .paper{ min-height:520px; display:grid; place-items:center; text-align:center; padding:72px 40px; }
.hero-tags{ display:flex; justify-content:center; align-items:center; gap:18px; margin-bottom:26px; }
.hero-tags i{ width:6px; height:6px; background:var(--leaf); transform:rotate(45deg); }
.hero h1{ max-width:900px; margin-inline:auto; }
.hero .lead{ max-width:620px; margin:26px auto 0; }
.hero-ctas{ display:flex; justify-content:center; flex-wrap:wrap; column-gap:38px; margin-top:14px; }
.deco-sprig{ position:absolute; top:-46px; right:3.5%; width:230px; transform:rotate(6deg); pointer-events:none; filter:drop-shadow(0 6px 8px rgba(44,90,68,.15)); }
.stamp{
  position:absolute; left:-34px; bottom:-40px; width:116px; transform:rotate(-8deg);
  padding:6px; filter:drop-shadow(0 4px 6px rgba(52,51,50,.22));
  background:radial-gradient(circle at 6px 6px, transparent 3.6px, #FFFDF8 4px) -6px -6px/12px 12px;
}
.stamp__in{ background:#FFFDF8; padding:7px 7px 6px; }
.stamp__in img{ width:100%; aspect-ratio:1/1.12; object-fit:cover; }
.stamp__cap{ display:flex; justify-content:space-between; margin-top:5px; font:400 8.5px/1 var(--font-mono); letter-spacing:.06em; color:var(--accent); text-transform:uppercase; }
.stamp--lg{ width:150px; left:auto; right:44px; top:-52px; bottom:auto; transform:rotate(6deg); }

/* ---------- Scroll gallery ---------- */
.gallery{ --p:0; height:230vh; position:relative; margin-top:40px; }
.gallery__sticky{ position:sticky; top:0; height:100vh; display:grid; place-items:center; padding-inline:var(--edge); }
.gallery__stage{ position:relative; width:min(1236px,100%); height:min(656px,84vh); }
.g-img{ position:absolute; margin:0; overflow:hidden; border-radius:2px; box-shadow:var(--shadow-card); background:var(--leaf-soft); }
.g-img img{ width:100%; height:100%; object-fit:cover; }
.g-side{ opacity:calc(1 - var(--p) * 1.5); }
.g-l{ transform:translateX(calc(var(--p) * -90px)); }
.g-r{ transform:translateX(calc(var(--p) * 90px)); }
.g-outer{ width:8%; height:61%; top:19.5%; }
.g-inner{ width:8%; height:42%; }
.g-l.g-outer{ left:0; } .g-r.g-outer{ right:0; }
.g-l.g-inner{ left:8.8%; } .g-r.g-inner{ right:8.8%; }
.g-inner.top{ top:0; } .g-inner.bot{ bottom:0; }
.g-center{
  left:50%; top:50%; height:calc(76% + (24% * var(--p)));
  width:calc(64.7% + (35.3% * var(--p)));
  transform:translate(-50%,-50%);
  box-shadow:var(--shadow-lift);
}

/* ---------- Origin story ---------- */
.badge{ position:absolute; left:50%; top:-49px; width:136px; height:136px; transform:translateX(-50%); z-index:2; }
.badge__disc{ position:absolute; inset:0; border-radius:50%; background:var(--white); box-shadow:var(--shadow-card); }
.badge__ring{ position:absolute; inset:0; animation:spin 40s linear infinite; }
.badge__ring text{ font:400 10.4px var(--font-mono); letter-spacing:.2em; fill:var(--accent); text-transform:uppercase; }
.badge__leaf{ position:absolute; inset:36px; }
@keyframes spin{ to{ transform:rotate(360deg) } }

.origin{ padding:128px 64px 64px; }
.origin-top{ display:grid; grid-template-columns:1fr 1fr; gap:48px 80px; }
.origin-top .display-2{ margin:12px 0 22px; }
.origin-top .copy-col{ padding-top:2px; }
.origin-top .mono-link{ margin-top:14px; }
.origin-links{ display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:0 28px; margin:56px 0 30px; }
.origin-links a{ display:inline-flex; min-height:44px; align-items:center; font:400 13px/1 var(--font-mono); letter-spacing:.08em; text-transform:uppercase; color:var(--ink); }
.origin-links a span{ background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat; padding-bottom:3px; transition:background-size .3s var(--ease); }
.origin-links a:hover span{ background-size:100% 1px; }
.origin-links i{ width:5px; height:5px; background:var(--leaf); transform:rotate(45deg); }
.wide-img{ height:360px; overflow:hidden; border-radius:2px; }
.wide-img img{ width:100%; height:100%; object-fit:cover; }

.recent{ display:grid; grid-template-columns:1fr 376px; gap:48px 24px; margin-top:64px; }
.recent-head p{ margin:14px 0 6px; max-width:460px; }
.recipes{ display:grid; grid-template-columns:1fr 1fr; gap:14px 28px; margin-top:22px; }
.recipe{ display:block; padding:18px 0 20px; border-top:1px solid var(--line); transition:transform .3s var(--ease); }
.recipe:hover{ transform:translateX(4px); }
.recipe h3{ display:flex; align-items:center; justify-content:space-between; gap:10px; font:500 18px/1.3 var(--font-body); letter-spacing:-.02em; color:var(--ink); }
.recipe p{ margin-top:8px; font-size:15px; line-height:1.5; letter-spacing:-.02em; }
.tag-top{ flex:none; background:var(--accent); color:var(--cream); padding:4px 8px 3px; border-radius:2px; font:400 11px/1 var(--font-mono); letter-spacing:.04em; }
.popular{ background:var(--ink); color:var(--cream); border-radius:2px; padding:26px 24px 8px; align-self:start; box-shadow:var(--shadow-card); }
.popular h3{ font:italic 500 32px/1.1 var(--font-display); letter-spacing:-.02em; margin-bottom:18px; }
.popular a{ display:grid; grid-template-columns:96px 1fr; gap:16px; padding:16px 0; border-top:1px solid rgba(251,248,242,.22); }
.popular img{ width:96px; height:96px; object-fit:cover; border-radius:2px; }
.popular h4{ margin:0 0 4px; font:500 15px/1.3 var(--font-body); letter-spacing:-.02em; }
.popular p{ font-size:13px; line-height:1.45; color:rgba(251,248,242,.9); }
.popular a:hover h4{ text-decoration:underline; text-underline-offset:3px; }

/* ---------- Longer stories ---------- */
.stories{ padding:64px 64px 56px; }
.story-hero{ position:relative; height:440px; border-radius:2px; overflow:hidden; color:#fff; display:flex; align-items:center; padding:0 48px; }
.story-hero img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.story-hero::after{ content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(20,44,33,.86) 0%, rgba(20,44,33,.55) 48%, rgba(20,44,33,.05) 100%); }
.story-hero div{ position:relative; z-index:1; max-width:560px; }
.story-hero h2{ font:italic 500 clamp(2rem,1.4rem + 1.8vw,3rem)/1.05 var(--font-display); letter-spacing:-.03em; }
.story-hero p{ margin-top:14px; font-size:18px; line-height:1.5; }
.story-grid{ display:grid; grid-template-columns:542px 1fr; gap:24px 24px; margin-top:48px; align-items:start; }
.story-feature{ border-radius:2px; overflow:hidden; height:700px; box-shadow:var(--shadow-card); }
.story-feature img{ width:100%; height:100%; object-fit:cover; }
.story-list{ display:grid; gap:24px; }
.story-card{
  position:relative; display:grid; grid-template-columns:259px 1fr; gap:0 24px; align-items:start;
  background:var(--white); padding:38px 23px 24px; border-radius:2px; box-shadow:var(--shadow-card);
  transition:transform .35s var(--ease), box-shadow .35s var(--ease);
}
.story-card:hover{ transform:translateY(-3px); box-shadow:var(--shadow-lift); }
.story-card time{ position:absolute; left:23px; top:14px; font:400 11px/1 var(--font-mono); letter-spacing:.06em; color:var(--muted); text-transform:uppercase; }
.story-card img{ width:259px; height:200px; object-fit:cover; border-radius:2px; }
.story-card h3{ font:500 18px/1.3 var(--font-body); letter-spacing:-.02em; color:var(--ink); }
.story-card p{ margin-top:8px; font-size:15px; line-height:1.5; letter-spacing:-.02em; }
.center-cta{ display:flex; justify-content:center; margin-top:36px; }
.center-cta .mono-link{ padding:0 4px; border-bottom:0; }

/* ---------- Life lately (marquee) ---------- */
.lately{ padding:88px 0 0; text-align:center; }
.lately .display-2{ margin:12px 0 14px; }
.lately > p{ max-width:530px; margin:0 auto; padding-inline:24px; }
.marquee{ position:relative; overflow:hidden; margin-top:44px; padding:24px 0 30px; }
.marquee__track{ display:flex; width:max-content; gap:24px; animation:marquee 46s linear infinite; }
.marquee:hover .marquee__track,.marquee:focus-within .marquee__track{ animation-play-state:paused; }
@keyframes marquee{ to{ transform:translateX(calc(-50% - 12px)); } }
.polaroid{
  width:224px; flex:none; background:var(--white); padding:12px 12px 14px; border-radius:2px; text-align:left;
  box-shadow:var(--shadow-card); transform:rotate(var(--r,0deg)); transition:transform .4s var(--ease);
}
.polaroid:nth-child(4n+1){ --r:-3deg; } .polaroid:nth-child(4n+2){ --r:2deg; margin-top:14px; }
.polaroid:nth-child(4n+3){ --r:-1.5deg; } .polaroid:nth-child(4n){ --r:3deg; margin-top:10px; }
.polaroid:hover{ transform:rotate(0) translateY(-6px); }
.polaroid img{ width:100%; height:206px; object-fit:cover; }
.polaroid p{ margin-top:10px; font:400 12.5px/1.45 var(--font-mono); letter-spacing:-.02em; color:var(--body); min-height:54px; }
.lately .mono-link{ margin-top:14px; }

/* ---------- Newsletter ---------- */
.letter{ padding:104px 76px 64px; display:grid; grid-template-columns:1fr 480px; gap:48px 80px; align-items:end; overflow:visible; }
.letter .display-2{ margin:14px 0 20px; }
.letter .copy{ max-width:440px; }
.letter-form{ display:flex; gap:0; border:1px solid var(--line); border-radius:2px; background:rgba(255,255,255,.7); }
.letter-form input{ flex:1; min-width:0; min-height:52px; padding:12px 16px; border:0; background:transparent; font-size:16px; }
.letter-form input:focus-visible{ outline-offset:-3px; }
.letter-form .btn{ border-radius:0 2px 2px 0; }
.letter-note{ margin-top:14px; font:400 12px/1.5 var(--font-mono); letter-spacing:-.01em; color:var(--muted); }
.form-msg{ margin-top:12px; font:400 13px/1.5 var(--font-mono); color:var(--accent); min-height:20px; }

/* ---------- Contact ---------- */
.contact{ padding:128px 64px 64px; }
.contact-grid{ display:grid; grid-template-columns:1fr 518px; gap:48px 90px; align-items:start; }
.contact-grid .display-2{ margin:14px 0 22px; }
.contact-grid .mono-link{ margin-top:10px; }
.field{ display:block; margin-bottom:20px; }
.field > span{ display:block; margin-bottom:6px; font:400 12px/1.3 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--ink); }
.field input,.field textarea{
  width:100%; padding:14px 16px; background:rgba(255,255,255,.75);
  border:1px solid rgba(44,90,68,.35); border-radius:2px; font-size:16px; line-height:1.3; color:var(--body);
  transition:border-color .2s, background .2s;
}
.field textarea{ min-height:150px; resize:vertical; }
.field input:hover,.field textarea:hover{ border-color:var(--ink); }
.field input:focus-visible,.field textarea:focus-visible{ outline:2px solid var(--ink); outline-offset:1px; background:#fff; }
.contact-form .btn{ width:100%; }
.socials{ display:flex; justify-content:center; flex-wrap:wrap; gap:0 32px; margin:56px 0 30px; }
.socials a{ display:inline-flex; align-items:center; min-height:44px; font:400 14px/1 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--ink); }
.socials a:hover{ text-decoration:underline; text-underline-offset:5px; }

/* ---------- Footer ---------- */
.site-footer{ margin-top:96px; padding:32px 24px 44px; text-align:center; }
.site-footer nav{ display:flex; justify-content:center; gap:8px 20px; flex-wrap:wrap; }
.site-footer a{ display:inline-flex; align-items:center; min-height:44px; padding:0 4px; font:400 13px/1 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--ink); }
.site-footer a:hover{ text-decoration:underline; text-underline-offset:4px; }
.site-footer p{ font:400 12px/1.5 var(--font-mono); color:var(--muted); letter-spacing:.02em; }

/* ---------- Inner pages ---------- */
.page-head{ padding:88px 64px 64px; text-align:center; }
.page-head .display-1{ margin:14px auto 20px; max-width:900px; }
.page-head .lead{ max-width:620px; margin-inline:auto; }
.chips{ display:flex; justify-content:center; flex-wrap:wrap; gap:10px; margin-top:32px; }
.chip{
  min-height:44px; padding:10px 20px; border:1px solid var(--line); border-radius:999px; background:transparent;
  font:400 13px/1 var(--font-mono); letter-spacing:.08em; text-transform:uppercase; color:var(--ink);
  transition:background .25s, color .25s, border-color .25s;
}
.chip:hover{ border-color:var(--ink); }
.chip[aria-pressed="true"]{ background:var(--ink); color:var(--cream); border-color:var(--ink); }
.post-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; padding:8px 0 0; }
.post-card{ display:block; background:var(--white); padding:14px 14px 24px; border-radius:2px; box-shadow:var(--shadow-card); transition:transform .35s var(--ease), box-shadow .35s var(--ease); }
.post-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-lift); }
.post-card[hidden]{ display:none; }
.post-card .ph{ aspect-ratio:4/3; overflow:hidden; border-radius:2px; }
.post-card img{ width:100%; height:100%; object-fit:cover; transition:transform .8s var(--ease); }
.post-card:hover img{ transform:scale(1.04); }
.post-card .meta{ display:flex; justify-content:space-between; margin:16px 6px 0; font:400 11px/1 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--muted); }
.post-card .meta b{ font-weight:400; color:var(--accent); }
.post-card h3{ margin:12px 6px 0; font:500 19px/1.3 var(--font-body); letter-spacing:-.02em; color:var(--ink); }
.post-card p{ margin:8px 6px 0; font-size:15px; line-height:1.5; letter-spacing:-.02em; }
.empty{ grid-column:1/-1; text-align:center; padding:40px 0; }

.article{ padding:88px 64px 72px; }
.article-head{ max-width:820px; margin:0 auto; text-align:center; }
.article-head .display-1{ margin:16px 0 20px; font-size:clamp(2.6rem,1.4rem + 4.6vw,4.4rem); }
.byline{ font:400 12px/1.4 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--muted); }
.article-cover{ margin:44px 0 0; height:460px; overflow:hidden; border-radius:2px; }
.article-cover img{ width:100%; height:100%; object-fit:cover; }
.prose{ max-width:680px; margin:52px auto 0; font-size:18px; line-height:1.7; letter-spacing:-.015em; }
.prose p + p{ margin-top:1.2em; }
.prose h2{ margin:2em 0 .5em; font:italic 500 clamp(1.9rem,1.5rem + 1.4vw,2.5rem)/1.1 var(--font-display); letter-spacing:-.03em; color:var(--ink); }
.prose blockquote{ margin:1.8em 0; padding:8px 0 8px 28px; border-left:2px solid var(--leaf); font:italic 500 clamp(1.6rem,1.3rem + 1vw,2.1rem)/1.25 var(--font-display); letter-spacing:-.02em; color:var(--ink); }
.prose ul{ margin:1.2em 0; display:grid; gap:10px; }
.prose li{ position:relative; padding-left:26px; }
.prose li::before{ content:""; position:absolute; left:4px; top:.7em; width:6px; height:6px; background:var(--leaf); transform:rotate(45deg); }
.prose figure{ margin:2em -60px; }
.prose figure img{ width:100%; height:400px; object-fit:cover; border-radius:2px; }
.prose figcaption{ margin-top:10px; text-align:center; font:400 12px/1.4 var(--font-mono); color:var(--muted); }
.more{ margin-top:56px; }
.more h2{ text-align:center; margin-bottom:32px; }

.values{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:56px; }
.value{ background:var(--white); border-radius:2px; padding:28px 26px 30px; box-shadow:var(--shadow-card); }
.value .num{ font:italic 500 44px/1 var(--font-display); color:var(--leaf); }
.value h3{ margin:14px 0 8px; font:500 19px/1.3 var(--font-body); letter-spacing:-.02em; color:var(--ink); }
.value p{ font-size:15px; line-height:1.55; letter-spacing:-.02em; }

/* ---------- Reveal ---------- */
.js .reveal{ opacity:0; transform:translateY(18px); transition:opacity .8s var(--ease), transform .8s var(--ease); transition-delay:var(--d,0ms); }
.js .reveal.in{ opacity:1; transform:none; }

/* ---------- Responsive ---------- */
@media (max-width:1180px){
  :root{ --edge:36px; }
  .story-grid{ grid-template-columns:1fr; }
  .story-feature{ height:520px; }
  .recent{ grid-template-columns:1fr; }
  .popular{ max-width:520px; }
  .letter,.contact-grid{ grid-template-columns:1fr; }
  .origin,.stories,.contact,.article,.page-head{ padding-inline:40px; }
  .letter{ padding-inline:44px; }
  .post-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:900px){
  :root{ --edge:10px; }
  .site-header{ height:112px; }
  .brand{ top:14px; } .brand img{ height:68px; }
  .site-nav{ display:none; }
  .menu-btn{ left:8px; top:14px; width:72px; height:72px; font-size:12px; }
  .menu-btn::before{ inset:5px; }
  .menu-close{ left:16px; top:16px; }
  .hero{ padding-top:16px; }
  .hero .paper{ padding:96px 22px 88px; min-height:0; }
  .deco-sprig{ width:150px; top:-40px; right:2%; }
  .stamp{ width:88px; left:-6px; bottom:-30px; }
  .block{ padding-top:48px; }
  .origin-top{ grid-template-columns:1fr; gap:24px; }
  .origin,.stories,.contact,.article,.page-head{ padding-inline:22px; }
  .origin{ padding-top:108px; padding-bottom:40px; }
  .contact{ padding-top:108px; }
  .badge{ width:112px; height:112px; top:-40px; } .badge__leaf{ inset:28px; }
  .wide-img{ height:240px; }
  .recipes{ grid-template-columns:1fr; }
  .story-hero{ height:380px; padding:0 24px; }
  .story-card{ grid-template-columns:1fr; padding:38px 18px 22px; }
  .story-card img{ width:100%; height:auto; aspect-ratio:4/3; margin-bottom:16px; }
  .story-card time{ left:18px; }
  .story-feature{ height:380px; }
  .letter{ padding:44px 22px; }
  .letter-form{ flex-direction:column; background:transparent; border:0; gap:10px; }
  .letter-form input{ border:1px solid var(--line); border-radius:2px; background:rgba(255,255,255,.75); }
  .letter-form .btn{ border-radius:2px; }
  .deco-mail{ display:none; }
  .lately{ padding-top:64px; }
  .polaroid{ width:190px; } .polaroid img{ height:170px; }
  /* gallery: no scroll choreography on small screens */
  .gallery{ height:auto; margin-top:32px; }
  .gallery__sticky{ position:static; height:auto; }
  .gallery__stage{ height:auto; }
  .g-side{ display:none; }
  .g-center{ position:relative; left:auto; top:auto; width:100%; height:auto; aspect-ratio:4/3; transform:none; }
  .post-grid{ grid-template-columns:1fr; }
  .article-cover{ height:280px; }
  .prose{ font-size:17px; } .prose figure{ margin-inline:0; } .prose figure img{ height:260px; }
  .values{ grid-template-columns:1fr; }
}

@media (max-width:600px){
  .hero h1 br{ display:none; }
  .hero-ctas{ flex-direction:column; align-items:center; column-gap:0; }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; }
  .js .reveal{ opacity:1; transform:none; }
  .gallery{ height:auto; }
  .gallery__sticky{ position:static; height:auto; }
  .marquee{ overflow-x:auto; }
  .marquee__track{ animation:none; }
  .marquee__track [aria-hidden="true"]{ display:none; }
}


/* ============================================================
   WORDPRESS — adaptações aos blocos
   ============================================================ */
:root{ --forest:#2C5A44; --font-display:'Cormorant Garamond','Iowan Old Style',Georgia,serif; --font-body:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; --font-mono:'Space Mono',ui-monospace,Menlo,monospace; }

/* riscas de fundo (o editor usa o mesmo fundo) */
body,.editor-styles-wrapper{
  background-color:var(--stripe-a);
  background-image:linear-gradient(90deg, var(--stripe-a) 0 25%, var(--stripe-b) 25% 75%, var(--stripe-a) 75% 100%);
  background-size:110px 100%;
}
.editor-styles-wrapper{ padding:0 !important; }

/* larguras: secções ocupam a largura toda e o conteúdo fica centrado com margens laterais */
body .wp-site-blocks .page, .editor-styles-wrapper .page{ max-width:1440px; margin-inline:auto; padding-inline:var(--edge); }
.wp-site-blocks > *{ margin-block-start:0; margin-block-end:0; }
.wp-site-blocks .alignfull.page{ margin-left:auto; margin-right:auto; }
main{ display:block; }

/* margens de blocos: o espaçamento é todo controlado por este CSS */
.wp-block-query, .wp-block-post-template{ margin-block-start:0; margin-block-end:0; }
.wp-block-post-template{ list-style:none; padding:0; margin:0; }
.wp-block-image{ margin:0; }
.wp-block-image img{ display:block; }
.wp-block-heading{ margin:0; }
p{ margin:0; }

/* ---------- Cabeçalho ---------- */
.site-header{ position:relative; height:152px; z-index:20; }
.site-header .brand{ position:absolute; left:50%; top:10px; transform:translateX(-50%); margin:0; }
.site-header .brand img{ height:86px; width:auto; }

/* botão MENU redondo (abre o menu em ecrã completo do WordPress) */
.site-header nav.nook-menu{ position:absolute; left:34px; top:26px; z-index:30; margin:0; }
.nook-menu .wp-block-navigation__responsive-container-open{
  position:relative; width:96px; height:96px; padding:0; border:0; border-radius:50%;
  background:var(--white); color:var(--accent); box-shadow:var(--shadow-card);
  display:flex; align-items:center; justify-content:center;
  font:400 14px/1 var(--font-mono); letter-spacing:.08em;
  transform:rotate(-8deg); transition:transform .4s var(--ease);
}
.nook-menu .wp-block-navigation__responsive-container-open svg{ display:none; }
.nook-menu .wp-block-navigation__responsive-container-open::after{ content:"MENU"; }
.nook-menu .wp-block-navigation__responsive-container-open::before{ content:""; position:absolute; inset:6px; border-radius:50%; border:1px dashed var(--leaf); }
.nook-menu .wp-block-navigation__responsive-container-open:hover{ transform:rotate(4deg) scale(1.04); }

/* menu aberto */
.nook-menu .wp-block-navigation__responsive-container.is-menu-open{
  background-color:var(--stripe-a) !important;
  background-image:linear-gradient(90deg, var(--stripe-a) 0 25%, var(--stripe-b) 25% 75%, var(--stripe-a) 75% 100%) !important;
  background-size:110px 100% !important;
  color:var(--forest) !important; padding:0 !important;
}
.nook-menu .is-menu-open .wp-block-navigation__responsive-container-content{
  min-height:100%; padding:96px 24px 64px; align-items:center; justify-content:center;
}
.nook-menu .is-menu-open .wp-block-navigation__container{ align-items:center; gap:4px; text-align:center; }
.nook-menu .is-menu-open .wp-block-navigation-item__content{
  font:italic 500 clamp(2.6rem,8vw,4.75rem)/1.1 var(--font-display); letter-spacing:-.04em; color:var(--forest); padding:2px 12px;
}
.nook-menu .is-menu-open .wp-block-navigation-item__content:hover{ color:var(--accent); }
.nook-menu .wp-block-navigation__responsive-container-close{
  position:absolute; top:26px; left:34px; width:96px; height:96px; border:0; border-radius:50%;
  background:var(--white); color:var(--accent); box-shadow:var(--shadow-card);
  display:flex; align-items:center; justify-content:center; font:400 14px/1 var(--font-mono); letter-spacing:.08em; transform:rotate(-8deg);
}
.nook-menu .wp-block-navigation__responsive-container-close svg{ display:none; }
.nook-menu .wp-block-navigation__responsive-container-close::after{ content:"CLOSE"; }
.nook-menu .wp-block-navigation__responsive-container-close::before{ content:""; position:absolute; inset:6px; border-radius:50%; border:1px dashed var(--leaf); }

/* ligações do menu principal */
.site-header nav.site-nav{ position:absolute; left:50%; top:106px; transform:translateX(-50%); margin:0; white-space:nowrap; }
.site-nav .wp-block-navigation__container{ gap:12px; flex-wrap:nowrap; }
.site-nav .wp-block-navigation-item__content{
  display:block; padding:12px 14px; font:400 13px/18px var(--font-mono); letter-spacing:.08em; text-transform:uppercase; color:var(--forest);
  background:linear-gradient(currentColor,currentColor) 14px calc(100% - 11px)/0 1px no-repeat; transition:background-size .3s var(--ease);
}
.site-nav .wp-block-navigation-item__content:hover,
.site-nav .current-menu-item > .wp-block-navigation-item__content{ background-size:calc(100% - 28px) 1px; }

/* ---------- Rodapé ---------- */
.site-footer{ margin-top:96px; padding:32px 24px 44px; text-align:center; }
.footer-links{ display:flex; justify-content:center; flex-wrap:wrap; gap:8px 20px; }
.footer-links a{ display:inline-flex; align-items:center; min-height:44px; padding:0 4px; font:400 13px/1 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--forest); }
.footer-links a:hover{ text-decoration:underline; text-underline-offset:4px; }
.footer-nav .wp-block-navigation__container{ gap:8px 20px; }
.footer-nav .wp-block-navigation-item__content{ display:inline-flex; align-items:center; min-height:44px; padding:0 4px; font:400 13px/1 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--forest); }
.footer-nav .wp-block-navigation-item__content:hover{ text-decoration:underline; text-underline-offset:4px; }
.site-footer .copyright{ font:400 12px/1.5 var(--font-mono); color:var(--muted); letter-spacing:.02em; }

/* ---------- Texto e ligações ---------- */
p.eyebrow{ font:400 13px/1.4 var(--font-mono); letter-spacing:.08em; text-transform:uppercase; color:var(--accent); }
.hero-tags{ display:block; text-align:center; margin-bottom:26px; }
.hero .paper .hero-tags{ margin-bottom:26px; }
p.lead{ font-size:clamp(1.125rem,1rem + .5vw,1.25rem); line-height:1.45; letter-spacing:-.02em; }
p.copy{ font-size:1rem; line-height:1.6; letter-spacing:-.01em; }
p.copy + p.copy{ margin-top:1.1em; }
.wp-block-heading.display-1,.wp-block-post-title.display-1,.wp-block-query-title.display-1{ font-family:var(--font-display); font-style:italic; font-weight:500; color:var(--forest); letter-spacing:-.04em; font-size:clamp(2.35rem,.9rem + 6.2vw,5rem); line-height:.98; }
.wp-block-heading.display-2{ font-family:var(--font-display); font-style:italic; font-weight:500; color:var(--forest); letter-spacing:-.04em; font-size:clamp(2.5rem,1.5rem + 3.6vw,4rem); line-height:1.05; }
.wp-block-heading.display-3{ font-family:var(--font-display); font-style:italic; font-weight:500; color:var(--forest); font-size:clamp(1.9rem,1.4rem + 1.6vw,2.5rem); line-height:1.1; letter-spacing:-.03em; }
.display-2{ margin:0; }
.letter .wp-block-heading.display-2{ margin:14px 0 20px; }
.contact-grid .wp-block-heading.display-2{ margin:14px 0 22px; }

/* ligações mono com seta: <p class="mono-link"><a>…</a></p> */
p.mono-link{ display:flex; align-items:center; min-height:44px; margin:0; }
p.mono-link a{
  display:inline-flex; align-items:center; gap:10px; color:var(--forest); padding-bottom:3px;
  font:400 13px/1 var(--font-mono); letter-spacing:.08em; text-transform:uppercase;
  background:linear-gradient(currentColor,currentColor) 0 calc(100% - 0px)/0 1px no-repeat; transition:background-size .3s var(--ease);
}
p.mono-link a::after{ content:""; width:16px; height:16px; background:currentColor; transition:transform .3s var(--ease);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.4'%3E%3Cpath d='M2 8h11M9 3.5 13.5 8 9 12.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.4'%3E%3Cpath d='M2 8h11M9 3.5 13.5 8 9 12.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat; }
p.mono-link a:hover,p.mono-link a:focus-visible{ background-size:100% 1px; }
p.mono-link a:hover::after{ transform:translateX(4px); }
p.mono-link.has-text-align-center{ justify-content:center; }
.contact-grid p.mono-link a::after, .contact-grid p.mono-link a:hover::after{ display:none; }   /* email sem seta */

.hero-ctas{ display:flex; justify-content:center; flex-wrap:wrap; column-gap:38px; margin-top:14px; }
.origin-links{ display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:0 18px; margin:56px 0 30px; text-align:center; color:var(--leaf); }
.origin-links a{ display:inline-flex; min-height:44px; align-items:center; padding:0 6px; font:400 13px/1 var(--font-mono); letter-spacing:.08em; text-transform:uppercase; color:var(--forest); }
.origin-links a:hover{ text-decoration:underline; text-underline-offset:5px; }
.center-cta{ display:flex; justify-content:center; margin-top:36px; }
.socials{ display:flex; justify-content:center; flex-wrap:wrap; gap:0 32px; margin:56px 0 30px; }
.socials a{ display:inline-flex; align-items:center; min-height:44px; font:400 14px/1 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--forest); }
.socials a:hover{ text-decoration:underline; text-underline-offset:5px; }

/* ---------- Hero e decoração ---------- */
.hero{ padding-top:24px; }
.hero .paper > .wp-block-group:last-child{ display:flex; flex-direction:column; align-items:center; max-width:900px; margin-inline:auto; }
.hero .paper h1{ max-width:900px; margin-inline:auto; }
.hero p.lead{ max-width:620px; margin:26px auto 0; }
.wp-block-image.deco-sprig{ position:absolute; top:-46px; right:3.5%; width:230px; transform:rotate(6deg); pointer-events:none; filter:drop-shadow(0 6px 8px rgba(44,90,68,.15)); margin:0; }
.wp-block-image.deco-sprig img{ width:100%; height:auto; }
.paper.page-head .deco-sprig{ top:-46px; }
.stamp{ position:absolute; left:-34px; bottom:-40px; width:116px; transform:rotate(-8deg); padding:6px; filter:drop-shadow(0 4px 6px rgba(52,51,50,.22)); background:radial-gradient(circle at 6px 6px, transparent 3.6px, #FFFDF8 4px) -6px -6px/12px 12px; }
.stamp__in{ background:#FFFDF8; padding:7px 7px 6px; }
.stamp__in .wp-block-image img{ width:100%; aspect-ratio:1/1.12; object-fit:cover; height:auto; }
.stamp__cap{ margin-top:5px !important; font:400 8.5px/1 var(--font-mono) !important; letter-spacing:.06em; color:var(--accent); text-transform:uppercase; text-align:center; }
.stamp--lg{ width:150px; left:auto; right:44px; top:-52px; bottom:auto; transform:rotate(6deg); }

/* ---------- Galeria ---------- */
.gallery .wp-block-image.g-img{ margin:0; }
.gallery .g-img img{ width:100%; height:100%; object-fit:cover; }
.gallery__sticky{ padding-inline:var(--edge); }

/* ---------- História ---------- */
.wide-img.wp-block-image{ height:360px; overflow:hidden; border-radius:2px; }
.wide-img.wp-block-image img{ width:100%; height:100%; object-fit:cover; }
.origin-top > .wp-block-group .display-2{ margin:12px 0 22px; }
.recent-head h2{ margin:0; }
.recipe-head h3{ font:500 18px/1.3 var(--font-body) !important; font-style:normal !important; letter-spacing:-.02em !important; color:var(--forest); }
.recipe > p{ margin-top:8px; font-size:15px; line-height:1.5; letter-spacing:-.02em; }
p.tag-top{ flex:none; background:var(--accent); color:var(--cream); padding:4px 8px 3px; border-radius:2px; font:400 11px/1 var(--font-mono); letter-spacing:.04em; }
.popular > h3{ font:italic 500 32px/1.1 var(--font-display) !important; letter-spacing:-.02em !important; margin-bottom:18px; color:var(--cream); }
.popular-item{ display:grid; grid-template-columns:96px 1fr; gap:16px; padding:16px 0; border-top:1px solid rgba(251,248,242,.22); }
.popular-item .wp-block-image img{ width:96px; height:96px; object-fit:cover; border-radius:2px; }
.popular-item h4{ margin:0 0 4px; font:500 15px/1.3 var(--font-body) !important; font-style:normal !important; letter-spacing:-.02em !important; color:var(--cream); }
.popular-item p{ font-size:13px; line-height:1.45; color:rgba(251,248,242,.9); }

/* ---------- Histórias (ligadas aos artigos do blog) ---------- */
.story-hero .wp-block-image{ position:absolute; inset:0; margin:0; }
.story-hero .wp-block-image img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.story-hero__text{ position:relative; z-index:1; max-width:560px; }
.story-hero h2{ font:italic 500 clamp(2rem,1.4rem + 1.8vw,3rem)/1.05 var(--font-display) !important; letter-spacing:-.03em !important; color:#fff !important; }
.story-hero__text p{ margin-top:14px; font-size:18px; line-height:1.5; color:#fff; }
.story-feature.wp-block-image{ border-radius:2px; overflow:hidden; height:700px; box-shadow:var(--shadow-card); }
.story-feature.wp-block-image img{ width:100%; height:100%; object-fit:cover; }
ul.story-list{ display:grid; gap:24px; }
ul.story-list > li{ margin:0; }
.story-card .wp-block-post-date{ white-space:nowrap; position:absolute; left:23px; top:14px; font:400 11px/1 var(--font-mono); letter-spacing:.06em; color:var(--muted); text-transform:uppercase; }
.story-card .wp-block-post-featured-image{ margin:0; }
.story-card .wp-block-post-featured-image img{ width:259px; height:200px; object-fit:cover; border-radius:2px; display:block; }
.story-card .wp-block-post-title{ font:500 18px/1.3 var(--font-body) !important; font-style:normal !important; letter-spacing:-.02em !important; margin:0; }
.story-card .wp-block-post-title a{ color:var(--forest); }
.story-card .wp-block-post-title a::after{ content:""; position:absolute; inset:0; }   /* cartão todo clicável */
.story-card .wp-block-post-excerpt{ margin-top:8px; }
.story-card .wp-block-post-excerpt p{ font-size:15px; line-height:1.5; letter-spacing:-.02em; margin:0; }
.wp-block-post-excerpt__more-text{ display:none; }
p.empty{ padding:24px 0; color:var(--muted); font-size:15px; }

/* ---------- Home lately ---------- */
.lately > p.copy{ max-width:530px; margin:0 auto; padding-inline:24px; }
.lately .display-2{ margin:12px 0 14px; }
.marquee{ margin-top:44px; }
.marquee__track{ width:max-content; }
.polaroid .wp-block-image{ margin:0; }
.polaroid .wp-block-image img{ width:100%; height:206px; object-fit:cover; }
.polaroid > p{ margin-top:10px; font:400 12.5px/1.45 var(--font-mono); letter-spacing:-.02em; color:var(--body); min-height:54px; }
.lately p.mono-link{ margin-top:14px; }

/* ---------- Newsletter e contacto ---------- */
.letter > .wp-block-group{ min-width:0; }
.letter-note{ margin-top:14px; font:400 12px/1.5 var(--font-mono); letter-spacing:-.01em; color:var(--muted); }

/* ---------- Páginas interiores ---------- */
.page-head p.lead{ max-width:620px; margin-inline:auto; }
.page-head .wp-block-heading, .page-head .wp-block-query-title{ margin:14px auto 20px; max-width:900px; }
ul.wp-block-categories-list.chips{ display:flex; justify-content:center; flex-wrap:wrap; gap:10px; margin:32px 0 0; padding:0; list-style:none; }
.chips li a{ display:inline-flex; align-items:center; min-height:44px; padding:10px 20px; border:1px solid var(--line); border-radius:999px; font:400 13px/1 var(--font-mono); letter-spacing:.08em; text-transform:uppercase; color:var(--forest); transition:background .25s,color .25s,border-color .25s; }
.chips li a:hover{ border-color:var(--forest); }
.chips li.current-cat a{ background:var(--forest); color:var(--cream); border-color:var(--forest); }
ul.post-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.post-grid > li{ margin:0; }
.post-card{ display:block; height:100%; background:var(--white); padding:14px 14px 24px; border-radius:2px; box-shadow:var(--shadow-card); transition:transform .35s var(--ease), box-shadow .35s var(--ease); }
.post-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-lift); }
.post-card .wp-block-post-featured-image{ margin:0; overflow:hidden; border-radius:2px; }
.post-card .wp-block-post-featured-image img{ width:100%; aspect-ratio:4/3; height:auto; object-fit:cover; transition:transform .8s var(--ease); display:block; }
.post-card:hover .wp-block-post-featured-image img{ transform:scale(1.04); }
.post-card .meta{ display:flex; justify-content:space-between; margin:16px 6px 0; font:400 11px/1 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--muted); }
.post-card .meta a{ color:var(--accent); }
.post-card .wp-block-post-title{ margin:12px 6px 0; font:500 19px/1.3 var(--font-body) !important; font-style:normal !important; letter-spacing:-.02em !important; }
.post-card .wp-block-post-title a{ color:var(--forest); }
.post-card .wp-block-post-excerpt{ margin:8px 6px 0; }
.post-card .wp-block-post-excerpt p{ font-size:15px; line-height:1.5; letter-spacing:-.02em; margin:0; }
.wp-block-query-pagination{ margin-top:40px; gap:16px; font:400 13px/1 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; }
.wp-block-query-pagination a{ color:var(--forest); padding:10px 6px; }
.wp-block-query-pagination .current{ color:var(--accent); text-decoration:underline; text-underline-offset:5px; }

.article-head .wp-block-post-terms{ font:400 13px/1.4 var(--font-mono); letter-spacing:.08em; text-transform:uppercase; }
.article-head .wp-block-post-terms a{ color:var(--accent); }
.article-head .wp-block-post-title{ margin:16px 0 20px; font-size:clamp(2.6rem,1.4rem + 4.6vw,4.4rem) !important; }
.article-head .wp-block-post-date, .byline{ font:400 12px/1.4 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--muted); }
.article-cover.wp-block-post-featured-image{ margin:44px 0 0; height:460px; overflow:hidden; border-radius:2px; }
.article-cover.wp-block-post-featured-image{ width:100%; }
.article-cover img{ width:100% !important; height:100% !important; max-width:100%; object-fit:cover; display:block; }
.prose{ margin-top:52px; font-size:18px; line-height:1.7; letter-spacing:-.015em; }
.prose > * + *{ margin-top:1.2em; }
.prose .wp-block-heading{ margin:2em 0 .5em; font:italic 500 clamp(1.9rem,1.5rem + 1.4vw,2.5rem)/1.1 var(--font-display); letter-spacing:-.03em; }
.prose .wp-block-quote{ margin:1.8em 0; padding:8px 0 8px 28px; border-left:2px solid var(--leaf); font:italic 500 clamp(1.6rem,1.3rem + 1vw,2.1rem)/1.25 var(--font-display); letter-spacing:-.02em; color:var(--forest); }
.prose .wp-block-quote p{ margin:0; }
.prose ul{ margin:1.2em 0; display:grid; gap:10px; list-style:none; padding:0; }
.prose li{ position:relative; padding-left:26px; }
.prose li::before{ content:""; position:absolute; left:4px; top:.7em; width:6px; height:6px; background:var(--leaf); transform:rotate(45deg); }
.prose .wp-block-image{ margin-inline:-60px; }
.prose .wp-block-image img{ width:100%; border-radius:2px; }
.prose figcaption{ margin-top:10px; text-align:center; font:400 12px/1.4 var(--font-mono); color:var(--muted); }
.more{ margin-top:56px; }
.more .display-3{ margin-bottom:32px; }
.origin--plain{ padding-top:64px; }
.origin--plain .wide-img{ margin-top:56px; }
.value p.num, .value .num{ font:italic 500 44px/1 var(--font-display); color:var(--leaf); }
.value h3{ margin:14px 0 8px; font:500 19px/1.3 var(--font-body) !important; font-style:normal !important; letter-spacing:-.02em !important; }
.value p{ font-size:15px; line-height:1.55; letter-spacing:-.02em; }
.value .num{ font-size:44px; }

/* pesquisa (404 / resultados) */
.wp-block-search{ max-width:480px; margin:28px auto 0; }
.wp-block-search__input{ padding:14px 16px; border:1px solid rgba(44,90,68,.35); border-radius:2px; background:rgba(255,255,255,.75); }
.wp-block-search__button{ background:var(--forest); color:var(--cream); border:0; border-radius:2px; padding:0 22px; font:400 13px/1 var(--font-mono); letter-spacing:.08em; text-transform:uppercase; }

/* ---------- Responsivo ---------- */
@media (max-width:1180px){
  ul.post-grid{ grid-template-columns:repeat(2,1fr); }
  .story-feature.wp-block-image{ height:520px; }
}
@media (max-width:900px){
  .site-header{ height:118px; }
  .site-header .brand{ top:10px; } .site-header .brand img{ height:74px; }
  .site-header nav.site-nav{ display:none; }
  .site-header nav.nook-menu{ left:8px; top:14px; }
  .nook-menu .wp-block-navigation__responsive-container-open{ width:72px; height:72px; font-size:12px; }
  .nook-menu .wp-block-navigation__responsive-container-open::before{ inset:5px; }
  .nook-menu .wp-block-navigation__responsive-container-close{ left:16px; top:16px; width:72px; height:72px; font-size:12px; }
  .wp-block-image.deco-sprig{ width:150px; top:-40px; right:2%; }
  .stamp{ width:88px; left:-6px; bottom:-30px; }
  .wide-img.wp-block-image{ height:240px; }
  .story-card .wp-block-post-featured-image img{ width:100%; height:auto; aspect-ratio:4/3; margin-bottom:16px; }
  .story-feature.wp-block-image{ height:380px; }
  .polaroid .wp-block-image img{ height:170px; }
  .gallery .g-center.wp-block-image{ position:relative; left:auto; top:auto; width:100%; height:auto; aspect-ratio:4/3; transform:none; }
  ul.post-grid{ grid-template-columns:1fr; }
  .article-cover.wp-block-post-featured-image{ height:280px; }
  .prose .wp-block-image{ margin-inline:0; }
  .popular-item{ grid-template-columns:80px 1fr; }
}
@media (max-width:600px){ .hero h1 br{ display:none; } .hero-ctas{ flex-direction:column; align-items:center; column-gap:0; } }
