/* Fábrica Douro — base para o Elementor 4 (antes do CSS do site) */
.elementor .e-con.e-atomic-element{--display:block;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--margin-top:0px;--margin-right:0px;--margin-bottom:0px;--margin-left:0px;--gap:normal;min-width:0}
[data-elementor-id]>.e-con.e-atomic-element{max-width:none}
.elementor-widget-html,.elementor-widget-html>.elementor-widget-container{display:contents}
.t-span,.t-txt,.t-i,.t-small,.t-cite,.t-time,.t-abbr,.t-mark,.t-q,.t-code,.t-b{display:inline}
.t-i,.t-cite,.t-q{font-style:italic}.t-b{font-weight:bolder}.t-small{font-size:smaller}
.t-ul,.t-ol,.t-dl,.t-figure,.t-blockquote,.t-address,.t-figcaption,.t-dd,.t-dt,.t-legend,.t-summary,.t-div,.t-li{display:block}
.t-ul,.t-ol{padding-left:40px;margin:1em 0}.t-li{display:list-item}.t-ul>.t-li{list-style:disc}.t-ol>.t-li{list-style:decimal}
.t-dl{margin:1em 0}.t-dd{margin-left:40px}.t-figure,.t-blockquote{margin:1em 40px}.t-address{font-style:italic}
.e-paragraph-base.t-li{display:list-item}
/* Fábrica Douro — sistema "Lagar e Socalco" v2 (maquete Onlyprogress)
   Letras: kit Adobe Fonts zdz5ktu — Warbler Banner/Display/Text e Map Roman Variable (DJR).
   No WordPress: cores e letras :is(em,.t-em) Site Settings do Elementor; este ficheiro no tema-filho. */
:root{
  --xisto:#1B1A17; --xisto-2:#262521; --xisto-3:#33312B; --cal:#EFEEE7; --cal-2:#E4E2D8; --branco:#F8F7F2;
  --azeitona:#5A5932; --ouro:#D6BE2E; --ouro-2:#B89F1C; --madura:#5C2A3A; --rama:#9DAA3C;
  --tx-esc:rgba(239,238,231,.74); --tx-cla:rgba(27,26,23,.72);
  --linha:rgba(90,89,50,.32); --linha-esc:rgba(239,238,231,.16);
  --g:clamp(18px,4.6vw,64px); --max:1480px;
  --f-banner:"freight-big-pro","Times New Roman",serif; --f-display:"freight-big-pro","Times New Roman",serif; --f-italico:"miller-display","Times New Roman",serif;
  --f-texto:"warbler-text",Georgia,serif; --f-map:"map-roman-variable","Times New Roman",serif;
  --ease:cubic-bezier(.16,.84,.3,1); --ease-io:cubic-bezier(.7,0,.3,1);
}
@view-transition{navigation:auto}
::view-transition-old(root){animation:.4s var(--ease-io) both fd-sai}
::view-transition-new(root){animation:.7s var(--ease) both fd-entra}
.fd-top{view-transition-name:topo}
@keyframes fd-sai{to{opacity:0;transform:translateY(-16px)}}
@keyframes fd-entra{from{opacity:0;transform:translateY(24px)}}

*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;overflow-x:clip;scrollbar-color:var(--azeitona) var(--cal)}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{background:var(--cal);color:var(--xisto);font-family:var(--f-texto);font-size:clamp(16.5px,.55vw + 13.5px,19px);line-height:1.6;overflow-x:clip;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-kerning:normal}
body.fd-preso{overflow:hidden}
::selection{background:var(--ouro);color:var(--xisto)}
[hidden]{display:none!important}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
button{font:inherit;color:inherit;cursor:pointer;background:none;border:0}
:focus-visible{outline:2px solid var(--ouro);outline-offset:3px}
.num{font-variant-numeric:lining-nums tabular-nums}
.so-leitor{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.so-leitor:focus{position:fixed;left:12px;top:12px;width:auto;height:auto;clip:auto;z-index:99;background:var(--xisto);color:var(--cal);padding:12px 16px}

/* ---------- Tipografia ---------- */
.t-mapa,.fd-rot,.fd-btn,.fd-link,.fd-nav,.fd-menu,.fd-chip,.fd-pat__n,.fd-passo__n,.fd-ficha :is(dt,.t-dt),.fd-cit :is(cite,.t-cite),.fd-rod .col :is(b,.t-b),.fd-campo label,.fd-campo :is(legend,.t-legend),.fd-escolha :is(legend,.t-legend),.fd-opcao :is(span,.t-span),.fd-leg,.fd-campanha,.fd-cal__mes,.fd-tabs button{font-family:var(--f-map);font-variation-settings:"wdth" var(--mw,100);text-transform:uppercase;letter-spacing:.12em;font-weight:400}
.fd-rot{display:block;font-size:12px;color:var(--azeitona);margin-bottom:8px}
.esc .fd-rot{color:var(--ouro)}
:is(h1,.t-h1),.fd-h1{font-family:var(--f-banner);font-weight:400;font-size:clamp(48px,8.6vw,150px);line-height:.92;letter-spacing:-.025em;text-wrap:balance}
:is(h1,.t-h1) :is(em,.t-em),.fd-h1 :is(em,.t-em),:is(h2,.t-h2) :is(em,.t-em),.fd-frase :is(em,.t-em),.fd-manifesto :is(em,.t-em),.fd-citfoto :is(em,.t-em),.fd-rc__img--txt :is(span,.t-span),.fd-packs .consulta{font-family:var(--f-italico);font-style:italic;letter-spacing:-.01em;color:var(--azeitona)}
.esc :is(h1,.t-h1) :is(em,.t-em),.esc :is(h2,.t-h2) :is(em,.t-em),.esc .fd-frase :is(em,.t-em){color:var(--ouro)}
:is(h2,.t-h2){font-family:var(--f-banner);font-weight:400;font-size:clamp(40px,6.4vw,104px);line-height:.96;letter-spacing:-.02em;text-wrap:balance}
:is(h3,.t-h3){font-family:var(--f-display);font-weight:400;font-size:clamp(25px,2.4vw,36px);line-height:1.08;letter-spacing:-.01em}
.fd-frase{font-family:var(--f-display);font-size:clamp(30px,4.4vw,70px);line-height:1.1;letter-spacing:-.015em;text-wrap:balance}
.fd-lead{font-family:var(--f-display);font-size:clamp(20px,1.7vw,26px);line-height:1.35;max-width:32ch}
.fd-texto :is(p,.t-p){max-width:42ch}.fd-texto :is(p,.t-p)+:is(p,.t-p){margin-top:1em}
.esc{background:var(--xisto);color:var(--cal)}
.esc :is(p,.t-p),.esc :is(dd,.t-dd),.esc :is(li,.t-li){color:var(--tx-esc)}
.esc .fd-lead,.esc .fd-frase{color:var(--cal)}

/* ---------- Estrutura ---------- */
.wrap{max-width:var(--max);margin:auto;padding:clamp(88px,12vw,190px) var(--g)}
.wrap--0{padding-top:0}
.dois{display:grid;gap:44px}
@media(min-width:900px){.dois{grid-template-columns:1fr 1fr;gap:clamp(56px,7vw,120px);align-items:start}.dois--c{align-items:center}}
.sangra{margin:0 calc(var(--g) * -1);overflow:hidden;position:relative}
.sangra img{width:100%;height:100%;object-fit:cover}
@media(min-width:900px){.sangra--fica{margin:0}}
.cab{display:grid;gap:22px;margin-bottom:clamp(48px,6vw,96px)}
@media(min-width:900px){.cab{grid-template-columns:1.3fr 1fr;align-items:end;gap:80px}}

/* ---------- Abertura ---------- */
.fd-abre{position:fixed;inset:0;z-index:90;background:var(--cal);display:grid;place-items:center;pointer-events:none}
.fd-abre svg{width:min(46vw,260px);overflow:visible}
.fd-abre .tr{fill:none;stroke:var(--azeitona);stroke-width:2.2;stroke-linecap:round}
.fd-abre .ed{fill:none;stroke:var(--xisto);stroke-width:2.2;stroke-linejoin:round}
.fd-abre .gota{fill:var(--ouro)}
.fd-abre :is(p,.t-p){position:absolute;bottom:max(32px,6vh);left:0;right:0;text-align:center;font-family:var(--f-map);text-transform:uppercase;letter-spacing:.3em;font-size:12px;color:var(--azeitona)}
html:not(.js) .fd-abre,html.vista .fd-abre{display:none}

/* ---------- Cabeçalho ---------- */
.fd-top{position:sticky;top:0;z-index:40;background:var(--cal);border-bottom:1px solid var(--linha);transition:transform .6s var(--ease)}
.fd-top.esconde{transform:translateY(-100%)}
.fd-top__in{display:flex;align-items:center;gap:20px;padding:10px var(--g);max-width:var(--max);margin:auto}
.fd-logo{margin-right:auto;display:block;padding:4px 0}
.fd-logo img{width:118px;height:auto}
.fd-nav{display:none;gap:clamp(18px,1.8vw,30px);font-size:12px;--mw:78;letter-spacing:.1em}
.fd-nav a{text-decoration:none;padding:14px 0;position:relative;white-space:nowrap}
.fd-btn,.fd-link,.fd-menu,.fd-tabs button,.fd-opcao :is(span,.t-span),.fd-chip{--mw:84}
.fd-nav a::after{content:"";position:absolute;left:0;right:0;bottom:8px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.fd-nav a:hover::after,.fd-nav a[aria-current]::after{transform:scaleX(1);transform-origin:left}
.fd-menu{border:1px solid var(--xisto);min-height:44px;padding:0 16px;font-size:12.5px}
.fd-top .fd-btn{display:none}
@media(min-width:1060px){.fd-nav{display:flex}.fd-menu{display:none}.fd-logo img{width:136px}.fd-top .fd-btn{display:inline-flex}}

/* Menu móvel */
.fd-gaveta{position:fixed;inset:0;z-index:60;background:var(--xisto);color:var(--cal);display:flex;flex-direction:column;padding:14px var(--g) calc(24px + env(safe-area-inset-bottom));visibility:hidden;clip-path:inset(0 0 100% 0);transition:clip-path .8s var(--ease-io),visibility 0s .8s}
.fd-gaveta.aberta{visibility:visible;clip-path:inset(0 0 0 0);transition:clip-path .8s var(--ease-io)}
.fd-gaveta__top{display:flex;justify-content:space-between;align-items:center;min-height:56px}
.fd-gaveta__top :is(span,.t-span){font-family:var(--f-map);text-transform:uppercase;letter-spacing:.2em;font-size:11px;color:var(--ouro)}
.fd-gaveta .fd-menu{border-color:var(--cal)}
.fd-gaveta nav{display:flex;flex-direction:column;margin-top:auto}
.fd-gaveta nav a{font-family:var(--f-banner);font-size:clamp(40px,11vw,76px);line-height:1.04;letter-spacing:-.02em;text-decoration:none;padding:6px 0;border-bottom:1px solid var(--linha-esc);display:flex;justify-content:space-between;align-items:baseline;opacity:0;transform:translateY(40px);transition:opacity .6s var(--ease),transform .9s var(--ease)}
.fd-gaveta nav a :is(small,.t-small){font-family:var(--f-map);font-size:11px;letter-spacing:.2em;color:var(--ouro)}
.fd-gaveta.aberta nav a{opacity:1;transform:none}
.fd-gaveta.aberta nav a:nth-child(2){transition-delay:.05s}.fd-gaveta.aberta nav a:nth-child(3){transition-delay:.1s}.fd-gaveta.aberta nav a:nth-child(4){transition-delay:.15s}.fd-gaveta.aberta nav a:nth-child(5){transition-delay:.2s}.fd-gaveta.aberta nav a:nth-child(6){transition-delay:.25s}.fd-gaveta.aberta nav a:nth-child(7){transition-delay:.3s}
.fd-gaveta__pe{margin-top:32px;display:grid;gap:14px}
.fd-gaveta__pe :is(p,.t-p){color:var(--tx-esc);font-size:15px}

/* ---------- Botões e ligações ---------- */
.fd-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;padding:0 28px;background:var(--xisto);color:var(--cal);text-decoration:none;font-size:12.5px;white-space:nowrap;overflow:hidden;isolation:isolate;transition:color .5s var(--ease)}
.fd-btn::before{content:"";position:absolute;inset:0;background:var(--ouro);transform:translateY(101%);transition:transform .55s var(--ease);z-index:-1}
.fd-btn:hover{color:var(--xisto)}
.fd-btn:hover::before{transform:none}
.fd-btn--ouro{background:var(--ouro);color:var(--xisto)}
.fd-btn--ouro::before{background:var(--cal)}
.fd-btn--claro{background:var(--cal);color:var(--xisto)}
.fd-btn .seta{width:16px;height:10px;transition:transform .5s var(--ease)}
.fd-btn:hover .seta{transform:translateX(4px)}
.fd-top .fd-btn{min-height:44px;padding:0 18px;font-size:11.5px}
.fd-link{position:relative;display:inline-block;font-size:12.5px;text-decoration:none;padding:16px 0 6px}
.fd-link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform-origin:left;transition:transform .55s var(--ease)}
.fd-link:hover::after{transform:scaleX(0);transform-origin:right}
.fd-cta{display:flex;flex-wrap:wrap;gap:14px 26px;align-items:center}

/* ---------- Hero com fotografia que abre ---------- */
.fd-hero{position:relative}
.fd-hero__txt{max-width:var(--max);margin:auto;padding:clamp(36px,7vw,96px) var(--g) clamp(28px,4vw,48px)}
.fd-hero__txt :is(h1,.t-h1){letter-spacing:var(--ls,-.025em)}
.fd-hero__base{display:grid;gap:22px;margin-top:clamp(26px,3.6vw,48px)}
.fd-hero__base :is(p,.t-p){max-width:34ch;font-family:var(--f-display);font-size:clamp(19px,1.5vw,24px);line-height:1.38}
@media(min-width:900px){.fd-hero__base{grid-template-columns:1fr auto;align-items:end}}
.fd-hero__foto{position:relative;height:min(92svh,900px);clip-path:inset(0 var(--ins,var(--g)) 0 var(--ins,var(--g)));overflow:hidden}
.fd-hero__foto img{--esc:1.12;width:100%;height:100%;object-fit:cover;transform:scale(var(--esc));transform-origin:50% 40%}
.fd-hero__foto::after{content:"";position:absolute;inset:0;box-shadow:inset 0 -180px 140px -90px rgba(27,26,23,.62);pointer-events:none}
.fd-campanha{position:absolute;left:var(--g);right:var(--g);bottom:22px;z-index:2;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:var(--cal);font-size:11.5px}
.fd-campanha :is(b,.t-b){font-weight:400;display:inline-flex;align-items:center;gap:10px}
.fd-campanha :is(i,.t-i){width:9px;height:9px;border-radius:50%;background:var(--ouro);box-shadow:0 0 0 0 rgba(214,190,46,.7);animation:fd-pulso 2.4s infinite}
@keyframes fd-pulso{70%{box-shadow:0 0 0 12px rgba(214,190,46,0)}100%{box-shadow:0 0 0 0 rgba(214,190,46,0)}}
.fd-linha-sobe{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.fd-linha-sobe>:is(span,.t-span){display:inline-block}

/* Páginas interiores: cabeça */
.fd-ph{max-width:var(--max);margin:auto;padding:clamp(48px,9vw,140px) var(--g) clamp(36px,5vw,72px)}
.fd-ph .fd-lead{margin-top:clamp(22px,3vw,40px)}
.fd-ph .fd-rot{margin-bottom:18px}

/* ---------- Manifesto (palavras acendem) ---------- */
.fd-manifesto{font-family:var(--f-display);font-size:clamp(32px,5vw,82px);line-height:1.08;letter-spacing:-.018em;max-width:22ch;text-wrap:pretty}
.fd-manifesto .p{--o:.18;opacity:var(--o)}
.fd-manifesto :is(em,.t-em){font-style:italic;color:var(--ouro)}
html:not(.js) .fd-manifesto .p{opacity:1}

/* ---------- História com imagem fixa ---------- */
.fd-hist{display:grid;gap:56px}
@media(min-width:960px){.fd-hist{grid-template-columns:1fr 1fr;gap:clamp(56px,7vw,120px)}}
.fd-hist__media{display:none}
@media(min-width:960px){.fd-hist__media{display:block;position:sticky;top:110px;align-self:start;height:calc(100svh - 160px);overflow:hidden}
  .fd-hist__media :is(figure,.t-figure){position:absolute;inset:0;clip-path:inset(100% 0 0 0);transition:clip-path 1.1s var(--ease-io)}
  .fd-hist__media :is(figure,.t-figure).on{clip-path:inset(0 0 0 0)}
  .fd-hist__media img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.6s var(--ease)}
  .fd-hist__media :is(figure,.t-figure).on img{transform:scale(1)}
  .fd-hist__media :is(figcaption,.t-figcaption){position:absolute;left:20px;bottom:18px;color:var(--cal);font-family:var(--f-map);text-transform:uppercase;letter-spacing:.14em;font-size:11px;text-shadow:0 1px 10px rgba(0,0,0,.5)}}
.fd-cap{padding:0 0 clamp(64px,12vh,160px)}
@media(min-width:960px){.fd-cap{min-height:82svh;display:flex;flex-direction:column;justify-content:center;padding:0}}
.fd-cap :is(h3,.t-h3){font-family:var(--f-banner);font-size:clamp(36px,4.2vw,66px);line-height:1;margin:6px 0 22px}
.fd-cap .ano{font-family:var(--f-map);text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--azeitona)}
.esc .fd-cap .ano{color:var(--ouro)}
.fd-cap__foto{aspect-ratio:4/3;margin:0 calc(var(--g) * -1) 28px;overflow:hidden}
.fd-cap__foto img{width:100%;height:100%;object-fit:cover}
@media(min-width:960px){.fd-cap__foto{display:none}}

/* ---------- Processo horizontal ---------- */
.fd-proc{position:relative;overflow:hidden;background:var(--xisto);color:var(--cal)}
.fd-proc__topo{max-width:var(--max);margin:auto;padding:clamp(56px,7svh,110px) var(--g) 20px;display:grid;gap:18px}
@media(min-width:900px){.fd-proc__topo{grid-template-columns:1.2fr 1fr;align-items:end;gap:80px}}
.fd-proc__topo :is(p,.t-p){color:var(--tx-esc);max-width:40ch}
.fd-proc__topo :is(h2,.t-h2){font-size:clamp(40px,5.2vw,88px)}
.fd-proc__barra{max-width:var(--max);margin:0 auto;padding:0 var(--g)}
.fd-proc__barra svg{width:100%;height:30px;overflow:visible}
.fd-proc__barra path{fill:none;stroke:var(--linha-esc);stroke-width:1.5}
.fd-proc__barra .ativo{stroke:var(--ouro);stroke-width:2.5}
.fd-proc__pista{display:flex;gap:clamp(16px,2vw,32px);padding:clamp(20px,3svh,40px) var(--g) clamp(40px,6svh,80px);width:max-content;will-change:transform}
.fd-passo{width:min(82vw,500px);flex:none;display:grid;grid-template-rows:auto auto 1fr;gap:16px;padding:26px;border:1px solid var(--linha-esc);background:rgba(239,238,231,.025);transition:border-color .6s var(--ease),background .6s var(--ease)}
.fd-passo.ativo{border-color:rgba(214,190,46,.55);background:rgba(214,190,46,.06)}
.fd-passo__fig{height:clamp(150px,28svh,290px);overflow:hidden;display:grid;place-items:center;color:var(--cal)}
.fd-passo__fig svg{height:clamp(140px,26svh,270px);width:auto;max-width:92%;overflow:visible}
.fd-passo__n{font-size:11.5px;color:var(--ouro);display:flex;justify-content:space-between}
.fd-passo :is(h3,.t-h3){font-family:var(--f-banner);font-size:clamp(32px,3vw,48px);line-height:1}
.fd-passo :is(p,.t-p){color:var(--tx-esc);font-size:.98em;max-width:36ch;margin-top:10px}
.fd-passo .dado{margin-top:18px;padding-top:14px;border-top:1px solid var(--linha-esc);display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;font-family:var(--f-banner);font-size:clamp(36px,3.2vw,54px);line-height:1;color:var(--ouro)}
.fd-passo .dado :is(small,.t-small){font-family:var(--f-map);text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--tx-esc)}

/* Ilustrações dos passos (traço) */
.il{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.il .o{stroke:var(--ouro)}
.il .of{fill:var(--ouro);stroke:none}
.il .ff{fill:rgba(239,238,231,.06)}
.il .roda,.il .roda-inv,.il .gira,.il .cai,.il .cai2,.il .cai3,.il .anda,.il .enche,.il .pinga,.il .corre,.il .oscila{transform-box:fill-box;animation-play-state:paused}
.fd-passo.ativo .il *,.il.sempre *{animation-play-state:running}
.il .roda{transform-origin:center;animation:il-roda 4s linear infinite}
.il .roda-inv{transform-origin:center;animation:il-roda 4s linear infinite reverse}
.il .gira{transform-origin:center;animation:il-roda 2.6s linear infinite}
.il .oscila{transform-origin:50% 0;animation:il-oscila 1.6s ease-in-out infinite alternate}
.il .cai{animation:il-cai 1.8s cubic-bezier(.5,0,.9,.5) infinite}
.il .cai2{animation:il-cai 1.8s cubic-bezier(.5,0,.9,.5) .6s infinite}
.il .cai3{animation:il-cai 1.8s cubic-bezier(.5,0,.9,.5) 1.2s infinite}
.il .anda{animation:il-anda 3s linear infinite}
.il .pinga{animation:il-pinga 1.4s ease-in infinite}
.il .corre{stroke-dasharray:6 10;animation:il-corre .8s linear infinite}
.il .enche{transform-origin:50% 100%;animation:il-enche 3.4s var(--ease) infinite alternate}
@keyframes il-roda{to{transform:rotate(360deg)}}
@keyframes il-oscila{from{transform:rotate(-12deg)}to{transform:rotate(12deg)}}
@keyframes il-cai{0%{transform:translateY(-30px);opacity:0}15%{opacity:1}80%{opacity:1}100%{transform:translateY(54px);opacity:0}}
@keyframes il-anda{from{transform:translateX(-60px)}to{transform:translateX(60px)}}
@keyframes il-pinga{0%{transform:translateY(-6px);opacity:0}30%{opacity:1}100%{transform:translateY(26px);opacity:0}}
@keyframes il-corre{to{stroke-dashoffset:-16}}
@keyframes il-enche{from{transform:scaleY(.25)}to{transform:scaleY(1)}}

/* ---------- Calendário da campanha ---------- */
.fd-cal{margin-top:clamp(56px,6vw,88px)}
.fd-cal__linha{position:relative;display:grid;grid-template-columns:repeat(12,1fr);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.esc .fd-cal__linha{border-color:var(--linha-esc)}
.fd-cal__mes{padding:14px 0 12px;font-size:10.5px;text-align:center;border-left:1px solid var(--linha);color:var(--tx-cla)}
.esc .fd-cal__mes{border-color:var(--linha-esc);color:var(--tx-esc)}
.fd-cal__mes:first-child{border-left:0}
.fd-cal__faixa{position:absolute;top:0;bottom:0;background:rgba(214,190,46,.22);border-left:2px solid var(--ouro);border-right:2px solid var(--ouro);transform-origin:left;transform:scaleX(var(--s,1))}
.fd-cal__hoje{position:absolute;top:-10px;bottom:-10px;width:2px;background:var(--xisto)}
.esc .fd-cal__hoje{background:var(--cal)}
.fd-cal__hoje :is(span,.t-span){position:absolute;top:-28px;left:50%;transform:translateX(-50%);white-space:nowrap;font-family:var(--f-map);text-transform:uppercase;letter-spacing:.14em;font-size:10.5px}
.fd-cal__leg{display:flex;flex-wrap:wrap;gap:8px 28px;margin-top:18px;font-size:15px;color:var(--tx-cla)}
.esc .fd-cal__leg{color:var(--tx-esc)}
@media(max-width:640px){.fd-cal__mes{font-size:8.5px;letter-spacing:0}}

/* ---------- Explorador de azeites ---------- */
.fd-exp{background:var(--cal-2)}
.fd-tabs{display:flex;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--linha);margin:0 calc(var(--g) * -1);padding:0 var(--g)}
.fd-tabs::-webkit-scrollbar{display:none}
.fd-tabs button{flex:none;min-height:56px;padding:0;margin-right:30px;font-size:12px;color:var(--tx-cla);position:relative}
.fd-tabs button::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--xisto);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.fd-tabs button[aria-selected=true]{color:var(--xisto)}
.fd-tabs button[aria-selected=true]::after{transform:none}
.fd-exp__corpo{display:grid;gap:30px;margin-top:clamp(28px,4vw,56px)}
@media(min-width:960px){.fd-exp__corpo{grid-template-columns:1fr 1.1fr;gap:80px;align-items:center}}
.fd-exp__garrafa{position:relative;aspect-ratio:1/1;display:grid;place-items:center}
.fd-exp__garrafa::before{content:"";position:absolute;width:52%;aspect-ratio:1;border-radius:50%;background:rgba(214,190,46,.34);filter:blur(48px);transition:background .8s var(--ease)}
.fd-exp__garrafa[data-fruta=madura]::before{background:rgba(92,42,58,.26)}
.fd-exp__garrafa img{position:absolute;inset:3% 0;margin:auto;height:94%;width:auto;max-width:90%;object-fit:contain;filter:drop-shadow(0 30px 30px rgba(27,26,23,.22));transition:opacity .45s var(--ease),transform .9s var(--ease)}
.fd-exp__garrafa img.sai{opacity:0;transform:translateY(30px) scale(.97)}
.fd-exp__info :is(h3,.t-h3){font-family:var(--f-banner);font-size:clamp(42px,4.8vw,80px);line-height:.95;letter-spacing:-.02em}
.fd-exp__info .sub{margin-top:12px;font-family:var(--f-map);text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--azeitona)}
.fd-exp__info>:is(p,.t-p){margin-top:20px;max-width:44ch}
.fd-aromas{margin-top:26px}
.fd-aromas :is(ul,.t-ul){list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.fd-chip{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border:1px solid rgba(27,26,23,.22);font-size:11px;color:rgba(27,26,23,.4);transition:background .6s var(--ease),color .6s var(--ease),border-color .6s var(--ease)}
.fd-chip::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.5}
.fd-chip.on{background:var(--xisto);border-color:var(--xisto);color:var(--cal)}
.fd-chip.on::before{background:var(--ouro);opacity:1}
.fd-exp__acao{margin-top:30px}

/* ---------- Fichas, packs, factos ---------- */
.fd-ficha{display:grid;grid-template-columns:auto 1fr;gap:12px 22px;margin:26px 0;border-top:1px solid var(--azeitona);padding-top:22px}
.fd-ficha :is(dt,.t-dt){font-size:11px;color:var(--azeitona);padding-top:5px}
.esc .fd-ficha :is(dt,.t-dt){color:var(--ouro)}
.fd-ficha :is(dd,.t-dd){color:var(--tx-cla)}
.esc .fd-ficha :is(dd,.t-dd){color:var(--tx-esc)}
.fd-packs{list-style:none;border-top:1px solid currentColor;margin-top:28px}
.fd-packs>:is(li,.t-li){display:grid;grid-template-columns:1fr auto;gap:6px 16px;padding:24px 0;border-bottom:1px solid var(--linha)}
.esc .fd-packs>:is(li,.t-li){border-color:var(--linha-esc)}
.fd-packs :is(h3,.t-h3){font-family:var(--f-banner);font-size:clamp(30px,2.6vw,42px)}
.fd-packs .preco{font-family:var(--f-banner);font-size:clamp(38px,3.2vw,54px);line-height:1}
.fd-packs .consulta{font-family:var(--f-display);font-style:italic;font-size:clamp(22px,2vw,28px)}
.fd-packs :is(p,.t-p),.fd-packs :is(ul,.t-ul){grid-column:1/-1;font-size:.97em;max-width:46ch}
.fd-packs :is(ul,.t-ul){list-style:none;margin-top:4px}
.fd-packs :is(ul,.t-ul) :is(li,.t-li){padding:3px 0 3px 22px;position:relative}
.fd-packs :is(ul,.t-ul) :is(li,.t-li)::before{content:"";position:absolute;left:0;top:.8em;width:12px;height:1px;background:var(--ouro)}
.fd-info{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0 32px}
.fd-nota{font-size:14px;color:var(--tx-cla);margin-top:16px;max-width:52ch}
.esc .fd-nota{color:var(--tx-esc)}
.fd-factos{display:grid;border-top:1px solid var(--linha)}
.fd-factos>div{padding:24px 0;border-bottom:1px solid var(--linha);display:grid;gap:6px}
.esc .fd-factos,.esc .fd-factos>div{border-color:var(--linha-esc)}
@media(min-width:900px){.fd-factos--3{grid-template-columns:1.5fr 1fr 1fr;gap:0 56px}}

/* ---------- Socalcos com fio ---------- */
.fd-socalcos{position:relative;padding-left:22px}
.fd-socalcos :is(ol,.t-ol){list-style:none}
.fd-fio{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.fd-fio path{fill:none;stroke:var(--ouro);stroke-width:3;stroke-linecap:square}
.fd-fio .base{stroke:var(--linha);stroke-width:1}
.esc .fd-fio .base{stroke:var(--linha-esc)}
.fd-pat{position:relative;padding:0 0 clamp(48px,6vw,80px);margin-left:calc(var(--i,0) * 6%);max-width:calc(100% - var(--i,0) * 6%)}
@media(min-width:900px){.fd-pat{margin-left:calc(var(--i,0) * 10%);max-width:540px}}
.fd-pat__n{font-size:11.5px;color:var(--azeitona);display:block;margin-bottom:8px}
.esc .fd-pat__n{color:var(--ouro)}
.fd-pat :is(h3,.t-h3){font-family:var(--f-banner);font-size:clamp(32px,3vw,48px);line-height:1;margin-bottom:10px}

/* ---------- Citação sobre fotografia ---------- */
.fd-citfoto{position:relative;min-height:min(100svh,980px);display:grid;align-items:end;overflow:hidden;color:var(--cal)}
.fd-citfoto>img{position:absolute;left:0;top:-10%;width:100%;height:120%;object-fit:cover;transform:translateY(var(--par,0))}
.fd-citfoto::before{content:"";position:absolute;inset:0;background:rgba(27,26,23,.34);box-shadow:inset 0 -260px 220px -80px rgba(27,26,23,.7);z-index:1}
.fd-citfoto .wrap{position:relative;z-index:2;width:100%}
.fd-citfoto :is(blockquote,.t-blockquote){font-family:var(--f-banner);font-size:clamp(36px,5.2vw,88px);line-height:1.02;letter-spacing:-.02em;max-width:18ch;text-wrap:balance}
@media(min-width:900px){.fd-citfoto--dir .wrap{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.fd-citfoto--dir::before{box-shadow:inset -520px 0 300px -160px rgba(27,26,23,.72)}}
.fd-citfoto :is(cite,.t-cite){display:block;margin-top:26px;font-family:var(--f-map);text-transform:uppercase;letter-spacing:.16em;font-style:normal;font-size:12px;color:var(--ouro)}
.fd-cit{border-top:1px solid var(--azeitona);padding-top:22px}
.fd-cit :is(blockquote,.t-blockquote){font-family:var(--f-display);font-style:italic;font-size:clamp(21px,1.8vw,27px);line-height:1.35}
.esc .fd-cit :is(blockquote,.t-blockquote){color:var(--cal)}
.fd-cit :is(cite,.t-cite){display:block;margin-top:16px;font-style:normal;font-size:11.5px;color:var(--azeitona)}
.esc .fd-cit :is(cite,.t-cite){color:var(--ouro)}

/* ---------- Receitas :is(em,.t-em) carril ---------- */
.fd-carril{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(var(--g) * -1);padding:0 var(--g) 8px;cursor:grab;overscroll-behavior-x:contain}
.fd-carril::-webkit-scrollbar{display:none}
.fd-carril.arrasta{cursor:grabbing;scroll-snap-type:none}
.fd-carril.arrasta a{pointer-events:none}
.fd-rc{flex:none;width:min(76vw,400px);scroll-snap-align:start;text-decoration:none;display:grid;gap:16px;align-content:start}
.fd-rc__img{aspect-ratio:4/5;overflow:hidden;background:var(--xisto-2);position:relative}
.fd-rc__img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.fd-rc:hover .fd-rc__img img{transform:scale(1.06)}
.fd-rc__img--txt{display:grid;place-items:end start;padding:26px;background:var(--azeitona);color:var(--cal)}
.fd-rc__img--txt :is(span,.t-span){font-family:var(--f-banner);font-style:italic;font-size:clamp(48px,5vw,74px);line-height:.92}
.fd-rc__img--ouro{background:var(--ouro);color:var(--xisto)}
.fd-rc :is(h3,.t-h3){font-family:var(--f-display);font-size:clamp(23px,1.9vw,28px)}
.fd-rc .por{font-family:var(--f-map);text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--azeitona)}
.esc .fd-rc .por{color:var(--ouro)}
.fd-carril__nav{display:flex;gap:8px}
.fd-carril__nav button{width:52px;height:52px;border:1px solid currentColor;display:grid;place-items:center;transition:background .4s var(--ease),color .4s var(--ease)}
.fd-carril__nav button:hover{background:var(--cal);color:var(--xisto)}
.fd-carril__nav svg{width:18px;height:12px}

/* Lista editorial */
.fd-rec{list-style:none;border-top:1px solid var(--linha)}
.fd-rec :is(li,.t-li){border-bottom:1px solid var(--linha)}
.fd-rec a{display:grid;gap:6px;padding:28px 0;text-decoration:none}
.fd-rec :is(h3,.t-h3){transition:transform .6s var(--ease),color .4s}
.fd-rec a:hover :is(h3,.t-h3){transform:translateX(12px);color:var(--azeitona)}
.fd-rec :is(p,.t-p){color:var(--tx-cla);max-width:60ch}
.fd-rec .por{font-family:var(--f-map);text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--azeitona)}
@media(min-width:900px){.fd-rec a{grid-template-columns:1.2fr 1.4fr 180px;gap:40px;align-items:baseline}}

/* ---------- Azeites: grelha e produto ---------- */
.lj-grelha{list-style:none;display:grid;border-top:1px solid var(--linha)}
@media(min-width:700px){.lj-grelha{grid-template-columns:1fr 1fr}}
@media(min-width:1100px){.lj-grelha{grid-template-columns:repeat(4,1fr)}}
.lj-prod{border-bottom:1px solid var(--linha)}
@media(min-width:700px){.lj-prod{border-right:1px solid var(--linha)}}
.lj-prod>a{display:grid;text-decoration:none;height:100%;padding:24px 0 30px}
@media(min-width:700px){.lj-prod>a{padding:28px}}
.lj-prod__fig{position:relative;aspect-ratio:1/1.15;display:grid;place-items:center;overflow:hidden}
.lj-prod__fig::before{content:"";position:absolute;width:70%;aspect-ratio:1;border-radius:50%;background:rgba(214,190,46,.28);filter:blur(40px);transform:scale(.6);opacity:0;transition:transform .9s var(--ease),opacity .9s var(--ease)}
.lj-prod>a:hover .lj-prod__fig::before{transform:scale(1);opacity:1}
.lj-prod__fig img{position:absolute;inset:6% 0;margin:auto;height:88%;width:auto;max-width:86%;object-fit:contain;filter:drop-shadow(0 30px 30px rgba(27,26,23,.22));transition:transform 1s var(--ease)}
.lj-prod>a:hover .lj-prod__fig img{transform:translateY(-12px) rotate(-2deg)}
.lj-prod__txt{display:grid;grid-template-columns:1fr auto;gap:6px 16px;margin-top:14px}
.lj-prod :is(h3,.t-h3){font-size:clamp(23px,1.9vw,28px)}
.lj-prod .vol{font-family:var(--f-map);text-transform:uppercase;letter-spacing:.1em;font-size:11px;color:var(--azeitona);padding-top:8px}
.lj-prod :is(p,.t-p){grid-column:1/-1;font-size:15px;color:var(--tx-cla)}
.lj-prod .esg{grid-column:1/-1;font-family:var(--f-map);text-transform:uppercase;letter-spacing:.12em;font-size:10.5px;color:var(--madura)}
.lj-pp{display:grid;gap:36px;max-width:var(--max);margin:auto;padding:clamp(24px,4vw,56px) var(--g) clamp(88px,10vw,150px)}
@media(min-width:960px){.lj-pp{grid-template-columns:1.15fr 1fr;gap:80px;align-items:start}}
.lj-galeria{display:grid;gap:10px}
.lj-galeria :is(figure,.t-figure){overflow:hidden;background:var(--cal-2)}
.lj-galeria .g1{aspect-ratio:4/5}
.lj-galeria .g1 img{width:100%;height:100%;object-fit:cover}
.lj-galeria .g2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lj-galeria .g2 :is(figure,.t-figure){aspect-ratio:1}
.lj-galeria .g2 img{width:100%;height:100%;object-fit:cover}
.lj-galeria .tec{position:relative;background:var(--cal)}
.lj-galeria .tec img{position:absolute;inset:6% 0;margin:auto;height:88%;width:auto;max-width:86%;object-fit:contain;filter:drop-shadow(0 30px 30px rgba(27,26,23,.22))}
@media(max-width:959px){.lj-galeria{margin:0 calc(var(--g) * -1)}.lj-galeria .g2{padding:0 var(--g)}}
@media(min-width:960px){.lj-info{position:sticky;top:100px}}
.lj-info :is(h1,.t-h1){font-size:clamp(46px,5.4vw,92px);line-height:.92}
.lj-info .sub{margin-top:12px;font-family:var(--f-map);text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--azeitona)}
.lj-garantias{list-style:none;display:grid;gap:8px;margin-top:22px;font-size:15.5px;color:var(--tx-cla)}
.lj-garantias :is(li,.t-li){padding-left:22px;position:relative}
.lj-garantias :is(li,.t-li)::before{content:"";position:absolute;left:0;top:.8em;width:12px;height:1px;background:var(--ouro)}
.fd-cond{border-top:1px solid var(--linha)}
.fd-cond details{border-bottom:1px solid var(--linha)}
.fd-cond :is(summary,.t-summary){list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font-family:var(--f-display);font-size:clamp(21px,1.8vw,26px);min-height:60px}
.fd-cond :is(summary,.t-summary)::-webkit-details-marker{display:none}
.fd-cond :is(summary,.t-summary)::after{content:"+";flex:none;font-family:var(--f-banner);font-size:30px;line-height:1;transition:transform .5s var(--ease)}
.fd-cond details[open] :is(summary,.t-summary)::after{transform:rotate(45deg)}
.fd-cond details>div{padding:0 0 24px;max-width:56ch;color:var(--tx-cla)}

/* ---------- Formulários ---------- */
.fd-form{display:grid;gap:20px}
.fd-form .lin{display:grid;gap:20px}
@media(min-width:620px){.fd-form .lin{grid-template-columns:1fr 1fr}}
.fd-campo{display:grid;gap:6px}
.fd-campo label,.fd-campo :is(legend,.t-legend),.fd-escolha :is(legend,.t-legend){font-size:11px;color:var(--azeitona)}
.fd-campo input,.fd-campo textarea{font:inherit;font-size:18px;color:var(--xisto);background:transparent;border:0;border-bottom:1px solid var(--xisto);border-radius:0;padding:10px 0;min-height:50px;width:100%;appearance:none}
.fd-campo textarea{min-height:120px;resize:vertical}
.fd-campo input:focus,.fd-campo textarea:focus{outline:0;border-bottom:2px solid var(--azeitona)}
.fd-campo :is(small,.t-small){font-size:14px;color:var(--madura);min-height:1em}
.fd-escolha{border:0;display:grid;gap:10px}
.fd-opcoes{display:grid;gap:10px}
@media(min-width:620px){.fd-opcoes{grid-template-columns:repeat(2,1fr)}}
.fd-opcoes--4{grid-template-columns:repeat(4,1fr)!important}
.fd-opcao{position:relative}
.fd-opcao input{position:absolute;opacity:0}
.fd-opcao :is(span,.t-span){display:flex;flex-direction:column;justify-content:center;min-height:58px;padding:12px 14px;border:1px solid rgba(27,26,23,.3);font-size:11.5px;transition:background .35s var(--ease),color .35s var(--ease),border-color .35s}
.fd-opcao :is(span,.t-span) :is(small,.t-small){font-family:var(--f-texto);text-transform:none;letter-spacing:0;font-size:14.5px;color:var(--tx-cla);margin-top:2px}
.fd-opcao input:checked+:is(span,.t-span){background:var(--xisto);color:var(--cal);border-color:var(--xisto)}
.fd-opcao input:checked+:is(span,.t-span) :is(small,.t-small){color:var(--tx-esc)}
.fd-opcao input:focus-visible+:is(span,.t-span){outline:2px solid var(--ouro);outline-offset:2px}
.fd-resumo{border-top:1px solid var(--xisto);padding-top:18px;display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.fd-resumo :is(span,.t-span){font-family:var(--f-map);text-transform:uppercase;letter-spacing:.12em;font-size:11.5px}
.fd-resumo :is(strong,.t-strong){font-family:var(--f-banner);font-weight:400;font-size:46px;line-height:1}

/* ---------- Mapa ---------- */
.fd-mapa{position:relative;aspect-ratio:4/3;background:var(--xisto);overflow:hidden;color:var(--cal);display:block;text-decoration:none}
.fd-mapa svg{position:absolute;inset:0;width:100%;height:100%}
.fd-mapa .cur{fill:none;stroke:rgba(239,238,231,.13);stroke-width:1}
.fd-mapa .rio{fill:none;stroke:var(--azeitona);stroke-width:7;stroke-linecap:round}
.fd-mapa .ponto{fill:var(--ouro)}
.fd-mapa .onda{fill:none;stroke:var(--ouro);stroke-width:1;transform-box:fill-box;transform-origin:center;animation:fd-onda 2.6s var(--ease) infinite}
@keyframes fd-onda{from{transform:scale(.4);opacity:1}to{transform:scale(2.6);opacity:0}}
.fd-mapa__pe{position:absolute;left:20px;right:20px;bottom:18px;display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;font-family:var(--f-map);text-transform:uppercase;letter-spacing:.12em;font-size:11px}
.fd-mapa__pe :is(span,.t-span):first-child{color:var(--ouro)}

/* ---------- Rodapé ---------- */
.fd-rod{background:var(--xisto);color:var(--cal);position:relative;overflow:hidden}
.fd-rod__grande{max-width:var(--max);margin:auto;padding:clamp(88px,11vw,170px) var(--g) clamp(48px,6vw,80px);border-bottom:1px solid var(--linha-esc)}
.fd-rod__grande :is(h2,.t-h2){font-size:clamp(60px,11.5vw,210px);line-height:.86}
.fd-rod__grande .fd-cta{margin-top:40px}
.fd-rod .wrap{padding-top:56px;padding-bottom:40px;display:grid;gap:36px}
.fd-rod :is(address,.t-address){font-style:normal;color:var(--tx-esc)}
.fd-rod a{text-decoration:none}
.fd-rod .col :is(b,.t-b){display:block;font-size:11px;color:var(--ouro);margin-bottom:8px}
.fd-rod .col :is(p,.t-p){color:var(--tx-esc)}
.fd-rod .col a{position:relative;display:inline-block;padding:10px 0;color:var(--cal)}
.fd-rod .col a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;background:var(--ouro);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.fd-rod .col a:hover::after{transform:none;transform-origin:left}
@media(min-width:900px){.fd-rod .wrap{grid-template-columns:1.5fr 1fr .9fr 1fr}}
.fd-cofin{background:#fff;padding:14px var(--g)}
.fd-cofin img{max-width:560px;width:100%;margin:auto}
.fd-legal{font-size:13px;color:rgba(239,238,231,.5);padding:20px var(--g) calc(28px + env(safe-area-inset-bottom));max-width:var(--max);margin:auto;display:flex;flex-wrap:wrap;gap:6px 22px}

/* Revelações (só onde há data-revela, e só com JS) */
html.anim [data-revela="foto"]{clip-path:inset(10% 8% 10% 8%)}
html.anim [data-revela="foto"] img{transform:scale(1.2)}
html.anim [data-revela="sobe"]{opacity:0;transform:translateY(44px)}

@media (prefers-reduced-motion:reduce){
  html.anim .fd-hero :is(h1,.t-h1),html.anim .fd-ph :is(h1,.t-h1){visibility:visible}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
  .fd-abre{display:none!important}
  html.anim [data-revela]{clip-path:none!important;opacity:1!important;transform:none!important}
  html.anim [data-revela] img{transform:none!important}
  .fd-manifesto .p{opacity:1!important}
  .fd-hero__foto{clip-path:none!important}.fd-hero__foto img{transform:none!important}
  ::view-transition-old(root),::view-transition-new(root){animation:none}
}

/* Quinta das Fiandeiras: a marca de topo com presença própria */
.fd-quinta{background:#141310}
.fd-quinta__grelha{display:grid;gap:40px}
@media(min-width:960px){.fd-quinta__grelha{grid-template-columns:1.25fr 1fr;gap:clamp(56px,7vw,120px);align-items:center}}
.fd-quinta__foto{margin:0 calc(var(--g) * -1);aspect-ratio:4/5;overflow:hidden}
.fd-quinta__foto img{width:100%;height:100%;object-fit:cover}
@media(min-width:960px){.fd-quinta__foto{margin:0;aspect-ratio:5/6}}
.fd-quinta :is(h2,.t-h2){font-size:clamp(48px,7vw,120px);line-height:.9}
.fd-quinta .fd-rot{color:var(--ouro)}
/* Pontuação pendurada nas citações e números alinhados */
:is(blockquote,.t-blockquote){hanging-punctuation:first}
.fd-citfoto :is(blockquote,.t-blockquote){text-indent:-.4em}
.fd-packs .preco,.fd-resumo :is(strong,.t-strong),.fd-passo .dado{font-variant-numeric:lining-nums proportional-nums}

html.anim .fd-hero :is(h1,.t-h1),html.anim .fd-ph :is(h1,.t-h1){visibility:hidden}

@media(min-width:900px){.fd-hero__txt :is(h1,.t-h1){max-width:13.5ch}}

/* ---------- Guia: régua de acidez ---------- */
.fd-regua{padding-top:28px}
.fd-regua__escala{position:relative;height:22px;font-family:var(--f-map);font-size:11px;letter-spacing:.1em;color:var(--tx-cla)}
.fd-regua__escala :is(span,.t-span){position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.fd-regua__escala :is(span,.t-span):first-child{transform:none}.fd-regua__escala :is(span,.t-span):last-child{transform:translateX(-100%)}
.fd-regua__linha{position:relative;height:56px;border:1px solid var(--linha);margin-top:6px}
.fd-regua__linha :is(i,.t-i){position:absolute;left:0;top:0;bottom:0;width:var(--w);transform-origin:left;transform:scaleX(var(--s,1))}
.fd-regua__linha .v{background:var(--cal-2);border-right:2px solid var(--azeitona)}
.fd-regua__linha .ve{background:var(--ouro);z-index:1;border-right:2px solid var(--xisto)}
.fd-regua__leg{display:flex;flex-wrap:wrap;gap:8px 28px;margin-top:16px;font-size:15px;color:var(--tx-cla)}
.fd-regua__leg :is(b,.t-b){display:inline-block;width:12px;height:12px;margin-right:8px;vertical-align:-1px}
.fd-regua__leg :is(b,.t-b).ve{background:var(--ouro)}.fd-regua__leg :is(b,.t-b).v{background:var(--cal-2);outline:1px solid var(--azeitona)}

/* ---------- Guia: colheita, de verde a maduro ---------- */
.fd-colheita{--cor:#9DAA3C}
.fd-colheita__topo{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}
.fd-colheita__nome{font-family:var(--f-banner);font-weight:400;font-size:clamp(34px,4vw,64px);line-height:1;color:var(--cor);transition:color .4s}
.fd-colheita__r{width:100%;margin:26px 0 10px;appearance:none;height:44px;background:transparent;cursor:grab}
.fd-colheita__r::-webkit-slider-runnable-track{height:2px;background:var(--linha-esc)}
.fd-colheita__r::-moz-range-track{height:2px;background:var(--linha-esc)}
.fd-colheita__r::-webkit-slider-thumb{appearance:none;width:30px;height:30px;margin-top:-14px;border-radius:50%;background:var(--cor);border:2px solid var(--cal);box-shadow:0 0 0 8px rgba(239,238,231,.08)}
.fd-colheita__r::-moz-range-thumb{width:28px;height:28px;border-radius:50%;background:var(--cor);border:2px solid var(--cal)}
.fd-colheita__meses{display:flex;justify-content:space-between;font-family:var(--f-map);text-transform:uppercase;letter-spacing:.1em;font-size:10.5px;color:var(--tx-esc)}
.fd-colheita__corpo{display:grid;gap:28px;margin-top:44px;align-items:center}
@media(min-width:900px){.fd-colheita__corpo{grid-template-columns:220px 1fr;gap:64px}}
.fd-colheita__gota{width:min(38vw,160px);aspect-ratio:1;background:var(--cor);border-radius:0 50% 50% 50%;transform:rotate(45deg);transition:background .4s;justify-self:center;margin:24px 0}
.fd-colheita__txt{font-family:var(--f-display);font-size:clamp(21px,1.8vw,27px);line-height:1.35;color:var(--cal);max-width:40ch}
.fd-colheita__notas{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.fd-colheita__notas :is(li,.t-li){font-family:var(--f-map);text-transform:uppercase;letter-spacing:.12em;font-size:11px;padding:10px 14px;border:1px solid var(--linha-esc);color:var(--cal)}
.fd-colheita__nossos{margin-top:20px;font-size:15px;color:var(--tx-esc)}
.fd-colheita__nossos a{color:var(--ouro)}

/* ---------- Guia: quatro notas ---------- */
.fd-guia{display:grid;gap:0;border-top:1px solid var(--linha)}
.fd-guia>div{padding:36px 0;border-bottom:1px solid var(--linha);display:grid;gap:10px;align-content:start}
.fd-guia :is(h3,.t-h3){font-family:var(--f-banner);font-size:clamp(28px,2.8vw,42px)}
.fd-guia :is(p,.t-p){max-width:44ch;color:var(--tx-cla)}
@media(min-width:900px){.fd-guia{grid-template-columns:1fr 1fr;column-gap:80px}}

/* ---------- Azeite vivo (WebGL) ---------- */
.fd-oleo{position:relative;height:100svh;min-height:560px;max-height:1100px;background:#8a7414;overflow:hidden;display:grid;place-items:center;text-align:center;color:var(--xisto);touch-action:pan-y}
.fd-oleo__tela{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.4s var(--ease)}
.fd-oleo__tela.pronta{opacity:1}
.fd-oleo__txt{position:relative;pointer-events:none;padding:0 var(--g)}
.fd-oleo__txt a{pointer-events:auto}
.fd-oleo .fd-rot{color:rgba(27,26,23,.78)}
.fd-oleo :is(h2,.t-h2){font-size:clamp(64px,13.5vw,250px);line-height:.86;letter-spacing:-.03em;color:var(--xisto);mix-blend-mode:multiply}
.fd-oleo :is(h2,.t-h2) :is(em,.t-em){color:var(--xisto)}
.fd-oleo :is(p,.t-p){font-family:var(--f-italico);font-style:italic;font-size:clamp(20px,1.8vw,26px);margin:18px 0 30px;color:rgba(27,26,23,.82)}

/* ===== Sistema de letra 4 (aprovado pelo Pedro, 29/10/2026) =====
   Títulos: Map Roman Variable :is(em,.t-em) maiúsculas comprimidas (letra de mapa gravado, eco dos rótulos).
   Destaques, entradas e citações: Miller Display itálico. Texto: Warbler Text. */
:root{--f-caps:"map-roman-variable","Times New Roman",serif}
:is(h1,.t-h1),:is(h2,.t-h2),.fd-h1{font-family:var(--f-caps);font-variation-settings:"wdth" 50;text-transform:uppercase;font-weight:400;letter-spacing:var(--ls,.004em);line-height:.88}
:is(h1,.t-h1),.fd-h1{font-size:clamp(56px,10.6vw,188px)}
:is(h2,.t-h2){font-size:clamp(46px,7.2vw,126px)}
.fd-hero__txt :is(h1,.t-h1){max-width:none;letter-spacing:var(--ls,.004em)}
:is(h1,.t-h1) :is(em,.t-em),:is(h2,.t-h2) :is(em,.t-em),.fd-h1 :is(em,.t-em){font-family:var(--f-italico);font-variation-settings:normal;text-transform:none;letter-spacing:-.015em;font-size:.94em}
.fd-cap :is(h3,.t-h3),.fd-passo :is(h3,.t-h3),.fd-packs :is(h3,.t-h3),.fd-exp__info :is(h3,.t-h3),.fd-guia :is(h3,.t-h3),.fd-pat :is(h3,.t-h3),.lj-prod :is(h3,.t-h3),.fd-rc :is(h3,.t-h3),.lj-info :is(h1,.t-h1),.fd-quinta :is(h2,.t-h2){font-family:var(--f-caps);font-variation-settings:"wdth" 58;text-transform:uppercase;letter-spacing:.012em;line-height:.95;font-weight:400}
.fd-cap :is(h3,.t-h3){font-size:clamp(40px,4.6vw,74px)}
.fd-passo :is(h3,.t-h3){font-size:clamp(36px,3.4vw,54px)}
.fd-packs :is(h3,.t-h3),.fd-pat :is(h3,.t-h3){font-size:clamp(32px,3vw,48px)}
.fd-exp__info :is(h3,.t-h3){font-size:clamp(48px,5.4vw,92px)}
.fd-guia :is(h3,.t-h3){font-size:clamp(30px,2.9vw,46px)}
.lj-prod :is(h3,.t-h3),.fd-rc :is(h3,.t-h3){font-size:clamp(26px,2.1vw,32px);line-height:1}
.lj-info :is(h1,.t-h1){font-size:clamp(56px,6.4vw,110px)}
.fd-quinta :is(h2,.t-h2){font-size:clamp(58px,8vw,140px);line-height:.86}
.lj-info :is(h1,.t-h1) :is(em,.t-em),.fd-quinta :is(h2,.t-h2) :is(em,.t-em),.fd-cap :is(h3,.t-h3) :is(em,.t-em){font-family:var(--f-italico);text-transform:none;letter-spacing:-.015em}
.fd-lead,.fd-frase,.fd-manifesto,.fd-hero__base :is(p,.t-p),.fd-cit :is(blockquote,.t-blockquote),.fd-cond :is(summary,.t-summary),.fd-colheita__txt,.fd-citfoto :is(blockquote,.t-blockquote),.fd-packs .consulta{font-family:var(--f-italico);font-style:italic;font-variation-settings:normal;text-transform:none}
.fd-manifesto{font-size:clamp(32px,4.6vw,76px);line-height:1.1;letter-spacing:-.012em}
.fd-manifesto :is(em,.t-em){color:var(--ouro);font-style:italic}
.fd-citfoto :is(blockquote,.t-blockquote){font-size:clamp(34px,4.6vw,78px);line-height:1.06;letter-spacing:-.015em;text-indent:-.35em}
.fd-lead{font-size:clamp(21px,1.8vw,27px);line-height:1.32}
.fd-packs .preco,.fd-resumo :is(strong,.t-strong),.fd-passo .dado,.fd-colheita__nome{font-family:var(--f-caps);font-variation-settings:"wdth" 58;text-transform:uppercase;letter-spacing:.01em}
.fd-passo .dado{font-size:clamp(40px,3.6vw,60px)}
.fd-gaveta nav a{font-family:var(--f-caps);font-variation-settings:"wdth" 52;text-transform:uppercase;letter-spacing:.01em;font-size:clamp(44px,12.5vw,84px);line-height:1}
.fd-rod__grande :is(h2,.t-h2){font-size:clamp(66px,13vw,232px);line-height:.84}
.fd-oleo :is(h2,.t-h2){font-size:clamp(70px,15vw,280px);line-height:.84;mix-blend-mode:normal}
.fd-rc__img--txt :is(span,.t-span){font-size:clamp(52px,5.4vw,80px)}

.fd-passo__fig{overflow:visible}
.fd-passo{overflow:hidden}

/* ===== Sistema de letra final (Pedro, 29/10/2026: "premium, tipo Apple, com apontamentos") =====
   Neue Haas Grotesk Display (títulos) + Text (leitura), de Christian Schwartz.
   Apontamentos: Miller Display itálico, só nas palavras de destaque. Kit Adobe jsa5bcr. */
:root{--f-d:"neue-haas-grotesk-display","Helvetica Neue",Arial,sans-serif;--f-t:"neue-haas-grotesk-text","Helvetica Neue",Arial,sans-serif;--f-italico:"miller-display","Times New Roman",serif}
body{font-family:var(--f-t);font-size:clamp(16.5px,.45vw + 14px,19px);line-height:1.58;letter-spacing:-.003em}
:is(h1,.t-h1),:is(h2,.t-h2),:is(h3,.t-h3),.fd-h1,.fd-cap :is(h3,.t-h3),.fd-passo :is(h3,.t-h3),.fd-packs :is(h3,.t-h3),.fd-exp__info :is(h3,.t-h3),.fd-guia :is(h3,.t-h3),.fd-pat :is(h3,.t-h3),.lj-prod :is(h3,.t-h3),.fd-rc :is(h3,.t-h3),.lj-info :is(h1,.t-h1),.fd-quinta :is(h2,.t-h2),.fd-rod__grande :is(h2,.t-h2),.fd-oleo :is(h2,.t-h2),.fd-gaveta nav a,.fd-packs .preco,.fd-resumo :is(strong,.t-strong),.fd-passo .dado,.fd-colheita__nome,.fd-cond :is(summary,.t-summary),.fd-citfoto :is(blockquote,.t-blockquote),.fd-manifesto,.fd-frase,.fd-lead,.fd-hero__base :is(p,.t-p),.fd-cit :is(blockquote,.t-blockquote),.fd-colheita__txt,.fd-packs .consulta,.fd-rc__img--txt :is(span,.t-span){font-family:var(--f-d);font-style:normal;font-variation-settings:normal;text-transform:none;font-weight:500}
:is(h1,.t-h1),.fd-h1{font-size:clamp(50px,8.8vw,158px);line-height:.95;letter-spacing:var(--ls,-.035em)}
.fd-hero__txt :is(h1,.t-h1){letter-spacing:var(--ls,-.035em)}
:is(h2,.t-h2){font-size:clamp(40px,6vw,104px);line-height:.98;letter-spacing:-.034em}
:is(h3,.t-h3),.fd-guia :is(h3,.t-h3),.fd-pat :is(h3,.t-h3),.fd-packs :is(h3,.t-h3){font-size:clamp(24px,2.3vw,34px);line-height:1.1;letter-spacing:-.022em}
.fd-cap :is(h3,.t-h3){font-size:clamp(34px,3.6vw,58px);letter-spacing:-.03em;line-height:1}
.fd-passo :is(h3,.t-h3){font-size:clamp(28px,2.6vw,40px);letter-spacing:-.028em;line-height:1.02}
.fd-exp__info :is(h3,.t-h3),.lj-info :is(h1,.t-h1){font-size:clamp(42px,4.8vw,80px);letter-spacing:-.034em;line-height:.98}
.lj-prod :is(h3,.t-h3),.fd-rc :is(h3,.t-h3){font-size:clamp(20px,1.6vw,24px);letter-spacing:-.018em;line-height:1.15}
.fd-quinta :is(h2,.t-h2){font-size:clamp(50px,7vw,124px);letter-spacing:-.036em;line-height:.94}
.fd-rod__grande :is(h2,.t-h2){font-size:clamp(60px,12vw,216px);letter-spacing:-.045em;line-height:.88}
.fd-oleo :is(h2,.t-h2){font-size:clamp(64px,13vw,240px);letter-spacing:-.045em;line-height:.88}
.fd-gaveta nav a{font-size:clamp(38px,10.5vw,68px);letter-spacing:-.035em;line-height:1.05}
/* apontamentos: itálico serifado só nas palavras de destaque */
:is(h1,.t-h1) :is(em,.t-em),:is(h2,.t-h2) :is(em,.t-em),.fd-h1 :is(em,.t-em),.lj-info :is(h1,.t-h1) :is(em,.t-em),.fd-quinta :is(h2,.t-h2) :is(em,.t-em),.fd-cap :is(h3,.t-h3) :is(em,.t-em),.fd-manifesto :is(em,.t-em),.fd-citfoto :is(blockquote,.t-blockquote) :is(em,.t-em),.fd-rod__grande :is(h2,.t-h2) :is(em,.t-em),.fd-oleo :is(h2,.t-h2) :is(em,.t-em){font-family:var(--f-italico);font-style:italic;font-weight:400;letter-spacing:-.012em;font-size:1.04em}
/* entradas e citações: Display leve, como a Apple */
.fd-lead,.fd-hero__base :is(p,.t-p){font-weight:400;letter-spacing:-.012em;line-height:1.35;font-size:clamp(20px,1.7vw,26px)}
.fd-manifesto{font-size:clamp(30px,4.4vw,72px);line-height:1.08;letter-spacing:-.03em;font-weight:500}
.fd-citfoto :is(blockquote,.t-blockquote){font-size:clamp(32px,4.2vw,70px);line-height:1.04;letter-spacing:-.032em;text-indent:-.3em}
.fd-cit :is(blockquote,.t-blockquote),.fd-colheita__txt{font-weight:400;letter-spacing:-.012em}
.fd-cond :is(summary,.t-summary){font-size:clamp(19px,1.5vw,23px);letter-spacing:-.015em}
.fd-packs .preco{font-size:clamp(34px,3vw,48px);letter-spacing:-.03em}
.fd-packs .consulta{font-size:clamp(20px,1.7vw,24px);font-weight:400}
.fd-passo .dado{font-size:clamp(36px,3.2vw,52px);letter-spacing:-.03em}
.fd-resumo :is(strong,.t-strong){font-size:44px;letter-spacing:-.03em}
.fd-colheita__nome{font-size:clamp(32px,3.6vw,58px);letter-spacing:-.03em}
.fd-rc__img--txt :is(span,.t-span){font-family:var(--f-italico);font-style:italic;font-weight:400}
/* rótulos, botões e menu: Text, discretos */
.t-mapa,.fd-rot,.fd-pat__n,.fd-passo__n,.fd-ficha :is(dt,.t-dt),.fd-cit :is(cite,.t-cite),.fd-rod .col :is(b,.t-b),.fd-campo label,.fd-campo :is(legend,.t-legend),.fd-escolha :is(legend,.t-legend),.fd-leg,.fd-campanha,.fd-cal__mes,.fd-chip,.fd-colheita__meses,.fd-colheita__notas :is(li,.t-li),.fd-regua__escala,.fd-mapa__pe,.fd-cap .ano,.lj-prod .vol,.lj-prod .esg,.fd-rec .por,.fd-rc .por,.fd-resumo :is(span,.t-span),.fd-citfoto :is(cite,.t-cite),.fd-exp__info .sub,.lj-info .sub,.fd-gaveta__top :is(span,.t-span),.fd-abre :is(p,.t-p),.fd-hist__media :is(figcaption,.t-figcaption){font-family:var(--f-t);font-variation-settings:normal;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.fd-rot,.fd-cap .ano{font-size:11.5px}
.fd-btn,.fd-link,.fd-nav,.fd-menu,.fd-tabs button,.fd-opcao :is(span,.t-span){font-family:var(--f-t);font-variation-settings:normal;text-transform:none;letter-spacing:-.005em;font-weight:500}
.fd-btn{font-size:15.5px}.fd-top .fd-btn{font-size:14px}
.fd-link{font-size:15.5px}
.fd-nav{font-size:14.5px;gap:clamp(18px,1.9vw,32px)}
.fd-menu{font-size:14.5px}
.fd-tabs button{font-size:15px}
.fd-opcao :is(span,.t-span){font-size:15px}
.fd-gaveta nav a :is(small,.t-small){font-family:var(--f-t)}

/* ===== Cantos ligeiramente arredondados (Pedro, 29/10/2026) =====
   Pequenos e consistentes, sem sombras. O que vai de margem a margem fica reto. */
:root{--r:18px;--r-s:10px;--r-xs:8px}
.fd-btn,.fd-menu,.fd-opcao :is(span,.t-span),.fd-carril__nav button{border-radius:var(--r-s)}
.fd-chip,.fd-colheita__notas :is(li,.t-li){border-radius:var(--r-xs)}
.fd-passo{border-radius:calc(var(--r) + 2px)}
.fd-regua__linha{border-radius:var(--r-s);overflow:hidden}
.fd-rc__img,.lj-galeria .g2 :is(figure,.t-figure),.fd-mapa{border-radius:var(--r);overflow:hidden}
.fd-hero__foto{clip-path:inset(0 var(--ins,var(--g)) 0 var(--ins,var(--g)) round var(--rh,20px))}
@media(min-width:900px){
  .sangra--fica,.fd-dest__foto,.fd-quinta__foto,.fd-vis__foto,.lj-galeria :is(figure,.t-figure),.fd-hist__media{border-radius:var(--r);overflow:hidden}
  .fd-hist__media :is(figure,.t-figure){border-radius:var(--r)}
}
@media(max-width:899px){.fd-rc__img{border-radius:14px}.fd-mapa{border-radius:0}}

/* ===== Tudo arredondado e mais refinado (Pedro, 29/10/2026) =====
   Raios: 12 (controlos) · 22 (fotografias e cartões) · 28 (blocos grandes). Retos só os ecrãs inteiros. */
:root{--r-s:12px;--r:22px;--r-l:28px}
/* cabeçalho a flutuar */
.fd-top{top:12px;margin:12px clamp(10px,2vw,28px) 0;border:1px solid var(--linha);border-radius:18px;background:rgba(239,238,231,.97)}
.fd-top.esconde{transform:translateY(calc(-100% - 20px))}
.fd-top__in{padding:8px clamp(14px,1.6vw,22px)}
/* fotografias emolduradas também no telemóvel */
.sangra,.fd-quinta__foto,.fd-cap__foto,.fd-dest__foto,.fd-vis__foto{margin-left:0;margin-right:0;border-radius:var(--r);overflow:hidden}
.lj-galeria{margin:0}.lj-galeria .g2{padding:0}
.lj-galeria :is(figure,.t-figure),.lj-galeria .g1,.fd-hist__media,.fd-hist__media :is(figure,.t-figure),.fd-rc__img,.fd-mapa{border-radius:var(--r);overflow:hidden}
@media(max-width:899px){.fd-mapa{border-radius:var(--r)}}
.fd-hero__foto{clip-path:inset(0 var(--ins,var(--g)) 0 var(--ins,var(--g)) round var(--rh,28px))}
/* cartões */
.fd-passo{border-radius:var(--r-l)}
.lj-grelha{gap:12px;border:0}
.lj-prod{border:0!important;background:var(--branco);border-radius:var(--r-l);overflow:hidden;transition:transform .7s var(--ease)}
.lj-prod:hover{transform:translateY(-4px)}
.lj-prod>a{padding:24px}
.fd-exp__garrafa{background:var(--branco);border-radius:var(--r-l)}
.lj-galeria .tec{background:var(--branco)}
/* controlos */
.fd-btn,.fd-menu,.fd-opcao :is(span,.t-span),.fd-carril__nav button,.fd-chip,.fd-colheita__notas :is(li,.t-li),.fd-regua__linha{border-radius:var(--r-s)}
.fd-carril__nav button{border-radius:50%}
.fd-campo input,.fd-campo textarea{border:1px solid rgba(27,26,23,.22);border-radius:var(--r-s);padding:12px 14px;background:var(--branco)}
.fd-campo input:focus,.fd-campo textarea:focus{border:1px solid var(--azeitona);box-shadow:0 0 0 3px rgba(90,89,50,.18)}
#reservar,#mensagem{background:var(--cal-2)}
#reservar .wrap,#mensagem .wrap{position:relative}
/* blocos de formulário :is(em,.t-em) cartão */
.fd-reserva,form[data-maquete]{background:var(--cal);border-radius:var(--r-l);padding:clamp(20px,3vw,40px)}
/* barra de cofinanciamento e rodapé */
.fd-cofin{margin:0 clamp(10px,2vw,28px) 12px;border-radius:var(--r)}
/* calendário */
.fd-cal__linha{border:1px solid var(--linha);border-radius:var(--r-s)}
.fd-cal__mes:first-child{border-radius:var(--r-s) 0 0 var(--r-s)}
.esc .fd-cal__linha{border-color:var(--linha-esc)}
.fd-cal__hoje{top:0;bottom:0}
.fd-cal__hoje :is(span,.t-span){top:-26px}
.fd-cal{padding-top:26px}

/* ===== Menu :is(em,.t-em) ecrã inteiro: abre :is(em,.t-em) círculo a partir do botão ===== */
.fd-top .fd-menu{display:inline-flex;align-items:center;gap:10px}
.fd-top .fd-menu::before{content:"";width:16px;height:7px;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor}
.fd-gaveta{display:grid;grid-template-rows:auto 1fr auto;gap:20px;padding:14px var(--g) calc(20px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;clip-path:circle(0px at var(--cx,92%) var(--cy,36px));transition:clip-path .85s var(--ease-io),visibility 0s .85s}
.fd-gaveta.aberta{clip-path:circle(160vmax at var(--cx,92%) var(--cy,36px));transition:clip-path .95s var(--ease-io)}
.fd-gaveta__top{min-height:60px}
.fd-gaveta__logo img{width:118px;height:auto}
.fd-menu--fechar{border-color:rgba(239,238,231,.5)!important;color:var(--cal)}
.fd-gaveta__corpo{display:grid;gap:32px;align-items:center;min-height:0}
@media(min-width:960px){.fd-gaveta__corpo{grid-template-columns:1.25fr .9fr;gap:clamp(40px,6vw,110px)}}
.fd-gaveta__nav{display:flex;flex-direction:column;margin:0}
.fd-gaveta .fd-gaveta__nav a{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:4px 20px;padding:clamp(8px,1.2vh,14px) 0;border-bottom:1px solid var(--linha-esc);font-size:inherit;transition:opacity .5s var(--ease),transform .9s var(--ease)}
.fd-gaveta__nav .t{font-family:var(--f-d);font-weight:500;font-size:clamp(30px,4.2vw,64px);line-height:1.02;letter-spacing:-.035em;transition:transform .6s var(--ease),color .4s}
.fd-gaveta__nav .d{font-family:var(--f-t);font-size:13px;color:var(--tx-esc);text-align:right}
.fd-gaveta__nav a[aria-current] .t{font-family:var(--f-italico);font-style:italic;font-weight:400;color:var(--ouro);letter-spacing:-.015em}
@media(hover:hover){.fd-gaveta__nav:hover a{opacity:.38}.fd-gaveta__nav a:hover{opacity:1}.fd-gaveta__nav a:hover .t{transform:translateX(12px)}}
.fd-gaveta__vista{display:none}
@media(min-width:960px){.fd-gaveta__vista{display:block;aspect-ratio:4/5;max-height:68vh;border-radius:var(--r-l);overflow:hidden;background:var(--xisto-2);justify-self:end;width:100%}
  .fd-gaveta__vista img{width:100%;height:100%;object-fit:cover;transition:opacity .45s var(--ease),transform 1.2s var(--ease);transform:scale(1.04)}
  .fd-gaveta.aberta .fd-gaveta__vista img{transform:scale(1)}}
.fd-gaveta__pe{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 28px;border-top:1px solid var(--linha-esc);padding-top:18px;margin-top:0}
.fd-gaveta__pe :is(p,.t-p){color:var(--tx-esc);font-size:15px}.fd-gaveta__pe a.num{color:var(--cal);text-decoration:none}
.fd-gaveta__camp{display:flex;gap:10px 18px;flex-wrap:wrap;font-family:var(--f-t);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--cal)}
.fd-gaveta__camp :is(b,.t-b){font-weight:500;display:inline-flex;align-items:center;gap:8px;color:var(--ouro)}
.fd-gaveta__camp :is(i,.t-i){width:8px;height:8px;border-radius:50%;background:var(--ouro);animation:fd-pulso 2.4s infinite}
@media(max-width:959px){.fd-gaveta{grid-template-rows:auto auto auto;align-content:start}.fd-gaveta__corpo{align-items:start}}
@media(max-width:599px){.fd-gaveta .fd-gaveta__nav a{grid-template-columns:1fr;padding:7px 0}.fd-gaveta__nav .d{display:none}.fd-gaveta__nav .t{font-size:clamp(28px,8.4vw,36px)}.fd-gaveta__pe{flex-direction:column;align-items:stretch}.fd-gaveta__pe .fd-btn{width:100%}}

/* ===== Rodapé legal ===== */
.fd-legal{display:grid;gap:18px;padding:22px var(--g) calc(26px + env(safe-area-inset-bottom));max-width:var(--max);margin:auto;font-size:13.5px;color:rgba(239,238,231,.6)}
@media(min-width:900px){.fd-legal{grid-template-columns:auto 1fr;align-items:center;gap:40px}}
.fd-legal__id{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.fd-legal__id img{width:96px;height:auto;opacity:.9}
.fd-legal nav{display:flex;flex-wrap:wrap;gap:6px 22px}
@media(min-width:900px){.fd-legal nav{justify-content:flex-end}}
.fd-legal nav a{color:rgba(239,238,231,.78);text-decoration:none;padding:8px 0;min-height:36px;display:inline-flex;align-items:center}
.fd-legal nav a:hover{color:var(--cal)}

/* ===== Página legal ===== */
.fd-aviso{display:inline-block;margin-bottom:36px;padding:10px 16px;border-radius:var(--r-s);background:var(--cal-2);font-size:14px;color:var(--tx-cla)}
.fd-legais{display:grid;gap:0;border-top:1px solid var(--linha)}
.fd-legais article{display:grid;gap:14px;padding:clamp(28px,4vw,48px) 0;border-bottom:1px solid var(--linha);scroll-margin-top:110px}
@media(min-width:900px){.fd-legais article{grid-template-columns:1fr 1.6fr;gap:60px}}
.fd-legais :is(h2,.t-h2){font-size:clamp(28px,2.8vw,42px);letter-spacing:-.03em}
.fd-legais .fd-texto :is(p,.t-p){max-width:62ch}
.fd-legais a{color:var(--azeitona)}
.fd-gaveta .fd-menu--fechar{display:inline-flex!important;align-items:center}
@media(min-width:600px){.fd-gaveta__nav .t{font-size:min(4.2vw,5.6vh,64px)}.fd-gaveta .fd-gaveta__nav a{padding:min(1.2vh,12px) 0}}
@media(min-width:960px){.fd-gaveta{grid-template-rows:auto minmax(0,1fr) auto}.fd-gaveta__vista{max-height:62vh}}

/* ===== Paletas :is(em,.t-em) revisão (só aparece com ?paleta=) ===== */
.fd-quinta{background:var(--q,#141310)}
.fd-paletas{position:fixed;left:12px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:80;display:flex;flex-direction:column;gap:6px;padding:10px;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:14px;font:500 12px/1.2 var(--f-t);color:#111}
.fd-paletas :is(span,.t-span){opacity:.6;text-transform:uppercase;letter-spacing:.08em;font-size:10.5px;padding:0 4px}
.fd-paletas button{text-align:left;padding:8px 10px;border-radius:9px;border:1px solid rgba(0,0,0,.1);background:#fafafa;min-height:36px}
.fd-paletas button[aria-pressed=true]{background:#111;color:#fff}
@media(min-width:1060px){.fd-paletas{bottom:16px}}

/* ===== Cabeçalho compacto a flutuar ao descer (computador) ===== */
.fd-top{transition:transform .6s var(--ease),max-width .7s var(--ease),margin .7s var(--ease),box-shadow .6s}
@media(min-width:1060px){
  .fd-top.compacto{max-width:960px;margin-left:auto;margin-right:auto}
  .fd-top.compacto .fd-logo img{width:104px}
  .fd-top.compacto .fd-nav{gap:22px}
  .fd-top.esconde{transform:none}
}
/* ===== Barra flutuante :is(em,.t-em) baixo (telemóvel) ===== */
.fd-doca{position:fixed;left:50%;bottom:calc(12px + env(safe-area-inset-bottom));z-index:45;display:flex;gap:6px;padding:6px;background:var(--xisto);border:1px solid var(--linha-esc);border-radius:18px;transform:translate(-50%,calc(100% + 30px));transition:transform .6s var(--ease);width:min(calc(100% - 24px),420px)}
.fd-doca.mostra{transform:translate(-50%,0)}
.fd-doca>*{flex:1;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:13px;font:500 15px var(--f-t);letter-spacing:-.005em;text-decoration:none;color:var(--cal);background:rgba(239,238,231,.06)}
.fd-doca .ouro{background:var(--ouro);color:var(--xisto);flex:1.4}
.fd-doca svg{width:16px;height:16px}
@media(min-width:1060px){.fd-doca{display:none}}

@media(max-width:1059px){.fd-legal{padding-bottom:calc(96px + env(safe-area-inset-bottom))}}

/* ===== Paleta definitiva: B "Oliveira" (Pedro, 29/10/2026) =====
   Escuros :is(em,.t-em) verde-azeitona profundo (o tom do logótipo), ouro antigo como cor de função. */
:root{--cal:#F2F0E7;--cal-2:#E5E3D4;--branco:#FAF9F3;--xisto:#1D2117;--xisto-2:#283020;--azeitona:#4E5A2B;--ouro:#C9A944;--madura:#5C2A3A;--rama:#93A23A;--linha:rgba(78,90,43,.30);--q:#151a10;--tx-cla:rgba(29,33,23,.72)}
html{scrollbar-color:var(--azeitona) var(--cal)}
.fd-top{background:rgba(242,240,231,.97)}

/* ===== Rodapé refeito (29/10) — hierarquia, ouro no destaque, cofinanciamento integrado ===== */
.fd-rod{background:var(--xisto);color:var(--cal);padding:0 0 4px}
.fd-rod__grande{max-width:var(--max);margin:auto;padding:clamp(64px,8vw,120px) var(--g) clamp(40px,5vw,64px);border-bottom:1px solid rgba(242,240,231,.12);display:grid;gap:clamp(28px,4vw,48px);align-items:end}
.fd-rod__grande :is(h2,.t-h2){font-size:clamp(64px,12.5vw,220px);line-height:.86;letter-spacing:-.05em;color:var(--cal)}
.fd-rod__grande :is(h2,.t-h2) :is(em,.t-em){color:var(--ouro)}
.fd-rod__convite :is(p,.t-p){color:rgba(242,240,231,.72);font-size:clamp(16px,1.25vw,19px);line-height:1.5;max-width:34ch}
.fd-rod__convite .fd-cta{margin-top:24px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px}
.fd-rod__convite .fd-link{color:var(--cal);font-size:17px}
@media(min-width:1000px){.fd-rod__grande{grid-template-columns:1fr auto}.fd-rod__convite{padding-bottom:1.2vw}}

.fd-rod__dados{max-width:var(--max);margin:auto;padding:clamp(36px,4.5vw,60px) var(--g);display:grid;grid-template-columns:1fr 1fr;gap:34px 24px}
.fd-rod__bloco{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
.fd-rod__bloco :is(b,.t-b){font-family:var(--f-t);font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ouro);margin-bottom:10px}
.fd-rod__bloco :is(address,.t-address),.fd-rod__bloco :is(span,.t-span){font-style:normal;color:rgba(242,240,231,.78);font-size:16px;line-height:1.55}
.fd-rod__bloco a{color:var(--cal);font-size:16px;line-height:1.55;text-decoration:none;padding:3px 0;background:linear-gradient(var(--ouro),var(--ouro)) 0 100%/0 1px no-repeat;transition:background-size .5s var(--ease);overflow-wrap:anywhere}
.fd-rod__bloco a:hover{background-size:100% 1px}
.fd-rod__bloco :is(small,.t-small){font-size:12.5px;line-height:1.45;color:rgba(242,240,231,.5);margin-top:6px;max-width:24ch}
.fd-rod__bloco--morada{grid-column:1/-1}
.fd-rod__mapa{margin-top:8px;font-size:14px!important;color:var(--ouro)!important}
.fd-rod__redes{display:flex;gap:18px;margin-top:12px}
.fd-rod__redes a{font-size:14px}
@media(min-width:900px){.fd-rod__dados{grid-template-columns:1.3fr 1fr 1.2fr 1fr;gap:24px 40px}.fd-rod__bloco--morada{grid-column:auto}}

.fd-cofin{margin:0 0 8px;margin-inline:max(var(--g),calc((100% - var(--max))/2 + var(--g)));background:#fff;border-radius:var(--r-s);padding:14px clamp(16px,2.4vw,28px);display:flex;justify-content:center}
.fd-cofin img{display:block;width:100%;max-width:620px;height:auto;margin:0}
.fd-legal{max-width:var(--max);margin:auto;padding:22px var(--g) calc(26px + env(safe-area-inset-bottom));font-size:13px;color:rgba(242,240,231,.5);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px}
@media(max-width:899px){
  .fd-rod__grande :is(h2,.t-h2){font-size:clamp(60px,19vw,96px)}
  .fd-rod__convite .fd-btn{flex:1 1 100%;justify-content:center}
  .fd-cofin{padding:10px 12px}
}
@media(max-width:1059px){.fd-legal{padding-bottom:calc(100px + env(safe-area-inset-bottom))}}

/* ===== Citação do Álvaro (29/10): foto emoldurada, sem esticar nem faixas de sombra ===== */
.fd-citfoto::before{background:linear-gradient(to top,rgba(21,26,16,.78) 0%,rgba(21,26,16,.35) 45%,rgba(21,26,16,.12) 100%);box-shadow:none}
.fd-citfoto--dir{min-height:0;display:block;background:var(--xisto);padding:clamp(56px,8vw,120px) 0}
.fd-citfoto--dir::before{display:none}
.fd-citfoto--dir .wrap{display:grid;gap:clamp(28px,4vw,72px);align-items:center;text-align:left}
.fd-citfoto__foto{margin:0;border-radius:var(--r-l);overflow:hidden;aspect-ratio:1440/1140;background:var(--xisto-2)}
.fd-citfoto__foto img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.04);transition:transform 1.6s var(--ease)}
.fd-citfoto--dir:hover .fd-citfoto__foto img{transform:none}
.fd-citfoto--dir :is(blockquote,.t-blockquote){font-size:clamp(30px,3.4vw,58px);max-width:16ch;text-indent:-.3em;color:var(--cal)}
.fd-citfoto--dir :is(cite,.t-cite){margin-top:22px}
@media(min-width:900px){.fd-citfoto--dir .wrap{grid-template-columns:1.15fr 1fr;display:grid;flex-direction:initial;align-items:center;text-align:left}}
@media(max-width:899px){.fd-citfoto--dir :is(blockquote,.t-blockquote){font-size:clamp(28px,8vw,40px)}}

/* ===== História: fio de azeite entre capítulos (29/10) ===== */
.fd-hist__caps{position:relative;padding-left:30px}
.fd-hist__fio{position:absolute;left:0;top:8px;bottom:clamp(64px,12vh,160px);width:1px;background:var(--linha);--p:0}
.fd-hist__fio :is(i,.t-i){position:absolute;inset:0;background:var(--ouro);transform-origin:top;transform:scaleY(var(--p))}
.fd-hist__fio :is(b,.t-b){position:absolute;left:-3.5px;top:calc(var(--p) * 100%);width:8px;height:11px;margin-top:-2px;background:var(--ouro);border-radius:50% 50% 50% 50%/62% 62% 38% 38%;opacity:calc(var(--p) * 40)}
.fd-cap .ano{position:relative;display:inline-block}
.fd-cap .ano::before{content:"";position:absolute;left:-35px;top:50%;width:9px;height:9px;margin-top:-5px;border-radius:50%;background:var(--cal);border:1px solid var(--azeitona);transition:background .5s var(--ease),border-color .5s var(--ease),box-shadow .5s var(--ease)}
.fd-cap.on .ano::before{background:var(--ouro);border-color:var(--ouro);box-shadow:0 0 0 6px rgba(201,169,68,.18)}
.fd-cap__foto{background:var(--cal-2);margin-bottom:26px}
.fd-cap__foto img{transform-origin:50% 60%}
@media(min-width:960px){.fd-hist__caps{padding-left:44px}.fd-cap .ano::before{left:-49px}.fd-hist__fio{bottom:0}}
@media(prefers-reduced-motion:reduce){.fd-hist__fio{--p:1}.fd-hist__fio :is(b,.t-b){display:none}}

/* rodapé: emails longos inteiros no telemóvel; cofinanciamento ao tamanho do conteúdo */
@media(max-width:899px){.fd-rod__bloco:nth-child(3){grid-column:1/-1;order:3}.fd-rod__bloco:nth-child(4){order:2}}
.fd-cofin{width:fit-content;max-width:calc(100% - 2*var(--g))}
@media(min-width:900px){.fd-cofin{padding:14px 32px}.fd-cofin img{width:620px}}

/* ===== Menu v3 (29/10): grupos, destaque das provas, revelação por linha ===== */
.fd-gm{display:flex;flex-direction:column;gap:clamp(14px,2.2vh,26px);min-width:0}
.fd-gm :is(ul,.t-ul){list-style:none;margin:0;padding:0}
.fd-gm__grupo{display:grid;gap:4px}
.fd-gm__rot{margin:0;font-family:var(--f-t);font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ouro);display:flex;align-items:center;gap:12px}
.fd-gm__rot::after{content:"";flex:1;height:1px;background:var(--linha-esc);transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease-io)}
.fd-gm__rot :is(span,.t-span){opacity:0;transition:opacity .6s var(--ease)}
.fd-gaveta.aberta .fd-gm__rot::after{transform:none;transition-delay:.35s}
.fd-gaveta.aberta .fd-gm__rot :is(span,.t-span){opacity:1;transition-delay:.3s}
.fd-gaveta .fd-gm a{all:unset;box-sizing:border-box;cursor:pointer;position:relative;display:flex;align-items:baseline;gap:16px;width:100%;padding:clamp(3px,.7vh,8px) 0;color:var(--cal);-webkit-tap-highlight-color:transparent;transition:opacity .45s var(--ease)}
.fd-gm .m{display:block;overflow:hidden;padding:.06em 0 .1em;margin:-.06em 0 -.1em}
.fd-gm .t{display:block;font-family:var(--f-d);font-weight:500;font-size:clamp(30px,8.6vw,40px);line-height:1.04;letter-spacing:-.035em;transform:translateY(108%);transition:transform .5s var(--ease-io),color .35s}
.fd-gaveta.aberta .fd-gm .t{transform:none;transition:transform 1s var(--ease-io) calc(.28s + var(--i) * .055s),color .35s}
.fd-gm .d{display:none;font-family:var(--f-t);font-size:13px;letter-spacing:0;color:var(--tx-esc);white-space:nowrap}
.fd-gm .seta{width:22px;height:14px;flex:none;align-self:center;color:var(--ouro);opacity:0;transform:translateX(-10px);transition:opacity .35s var(--ease),transform .5s var(--ease)}
.fd-gm a[aria-current] .t{font-family:var(--f-italico);font-style:italic;font-weight:400;letter-spacing:-.015em;color:var(--ouro)}
.fd-gm a[aria-current]::before{content:"";position:absolute;left:-18px;top:50%;width:7px;height:7px;margin-top:-3px;border-radius:50%;background:var(--ouro)}
.fd-gm a:focus-visible{outline:2px solid var(--ouro);outline-offset:4px;border-radius:6px}
@media(hover:hover){
  .fd-gm:hover a{opacity:.34}
  .fd-gm a:hover{opacity:1}
  .fd-gm a:hover .t{color:var(--cal)}
  .fd-gm a:hover .seta{opacity:1;transform:none}
}
/* lado: vista + destaque */
.fd-gm__lado{display:grid;gap:14px;align-content:center;min-height:0;opacity:0;transform:translateY(24px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.fd-gaveta.aberta .fd-gm__lado{opacity:1;transform:none;transition:opacity .9s var(--ease) .45s,transform 1.1s var(--ease-io) .45s}
.fd-gaveta__vista{position:relative}
.fd-gaveta__vista :is(figcaption,.t-figcaption){position:absolute;left:0;right:0;bottom:0;display:flex;align-items:baseline;gap:14px;padding:44px 20px 18px;background:linear-gradient(to top,rgba(21,26,16,.78),rgba(21,26,16,0));color:var(--cal);font-size:15px}
.fd-gaveta__vista :is(figcaption,.t-figcaption) .n{font-family:var(--f-t);font-size:11px;letter-spacing:.14em;color:var(--ouro)}
.fd-gaveta__vista :is(figcaption,.t-figcaption) .c{transition:opacity .3s var(--ease)}
.fd-gm__dest{display:grid;grid-template-columns:1fr auto;align-items:end;gap:4px 18px;padding:18px 20px;border-radius:var(--r);background:var(--ouro);color:var(--xisto);text-decoration:none;transition:background .4s var(--ease),transform .5s var(--ease)}
.fd-gm__dest:hover{background:#d6b752}
.fd-gm__dest:active{transform:scale(.985)}
.fd-gm__dest .k{grid-column:1/-1;font-family:var(--f-t);font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.75}
.fd-gm__dest :is(strong,.t-strong){font-family:var(--f-d);font-weight:500;font-size:clamp(26px,2.4vw,34px);letter-spacing:-.03em;line-height:1}
.fd-gm__dest :is(strong,.t-strong) :is(small,.t-small){font-family:var(--f-t);font-size:12px;letter-spacing:0;font-weight:500;opacity:.7}
.fd-gm__dest .s{grid-column:1;font-size:13.5px;line-height:1.4;opacity:.8}
.fd-gm__dest .ir{grid-column:2;grid-row:2/4;align-self:end;display:inline-flex;align-items:center;gap:10px;font-weight:500;font-size:15px;white-space:nowrap}
.fd-gm__dest .ir .seta{width:18px;height:12px;transition:transform .5s var(--ease)}
.fd-gm__dest:hover .ir .seta{transform:translateX(5px)}
/* rodapé do menu */
.fd-gaveta__pe{opacity:0;transition:opacity .4s var(--ease)}
.fd-gaveta.aberta .fd-gaveta__pe{opacity:1;transition:opacity .8s var(--ease) .7s}
.fd-gaveta__pe :is(p,.t-p) a{color:var(--cal);text-decoration:none}
.fd-gaveta__pe .redes{display:flex;gap:20px}
/* telemóvel */
@media(max-width:959px){
  .fd-gaveta__corpo{gap:22px}
  .fd-gaveta__vista{display:none!important}
  .fd-gm__dest{padding:16px 18px}
  .fd-gm__dest .ir{grid-row:auto;grid-column:1/-1;margin-top:8px}
  .fd-gm a[aria-current]::before{left:auto;right:0}
  .fd-gaveta__pe{flex-direction:column;align-items:flex-start;gap:10px}
}
@media(max-height:700px) and (max-width:959px){.fd-gm .t{font-size:28px}.fd-gm__dest .s{display:none}}
/* computador */
@media(min-width:960px){
  .fd-gaveta__corpo{grid-template-columns:minmax(0,1.35fr) minmax(300px,.8fr);align-items:center}
  .fd-gm__grupo{grid-template-columns:7.5rem 1fr;align-items:baseline;gap:0}
  .fd-gm__rot{padding-top:.7em}
  .fd-gm__rot::after{display:none}
  .fd-gm :is(ul,.t-ul){border-top:1px solid var(--linha-esc)}
  .fd-gaveta .fd-gm a{border-bottom:1px solid var(--linha-esc);padding:min(.9vh,9px) 0}
  .fd-gm .t{font-size:min(3.4vw,4.6vh,54px)}
  .fd-gm .d{display:block;margin-left:auto;opacity:0;transform:translateY(6px);transition:opacity .4s var(--ease),transform .5s var(--ease)}
  .fd-gaveta.aberta .fd-gm .d{opacity:1;transform:none;transition-delay:calc(.6s + var(--i) * .04s)}
  .fd-gaveta__vista{aspect-ratio:5/4;max-height:46vh;width:100%}
}
@media(prefers-reduced-motion:reduce){.fd-gm .t,.fd-gm__lado,.fd-gaveta__pe,.fd-gm__rot :is(span,.t-span){transform:none!important;opacity:1!important;transition:none!important}}
@media(max-width:959px){
  .fd-gaveta{display:flex;flex-direction:column;gap:16px}
  .fd-gaveta>*{flex:none}
  .fd-gaveta__corpo,.fd-gm__lado{min-height:auto;display:flex;flex-direction:column;gap:18px;align-items:stretch}
  .fd-gm__dest{grid-template-columns:1fr auto;align-items:center}
  .fd-gm__dest .s{display:none}
  .fd-gm__dest .ir{grid-column:2;grid-row:2;margin:0}
  .fd-gaveta__pe{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 18px;padding-top:14px;margin-top:auto}
  .fd-gaveta__camp{flex:1 1 100%}
}
.fd-citfoto--dir{padding:clamp(48px,6vw,96px) 0}
/* revisão mobile (29/10) */
.fd-colheita__meses{gap:12px}
.fd-colheita__meses :is(span,.t-span):last-child{text-align:right}
@media(max-width:599px){.fd-colheita__meses .meio{display:none}}
@media(max-width:899px){.fd-tabs{-webkit-mask-image:linear-gradient(to right,#000 82%,transparent);mask-image:linear-gradient(to right,#000 82%,transparent)}}

/* ===== Destaque do lagar na página inicial (29/10) ===== */
.fd-lagd{padding:clamp(64px,9vw,140px) 0}
.fd-lagd .wrap{display:grid;gap:clamp(36px,5vw,80px);align-items:center}
@media(min-width:960px){.fd-lagd .wrap{grid-template-columns:1fr 1.05fr}}
.fd-lagd :is(h2,.t-h2){font-size:clamp(40px,5.4vw,92px);line-height:.98;margin:10px 0 22px;max-width:12ch}
.fd-lagd .fd-lead{max-width:40ch}
.fd-lagd__dados{margin:34px 0 0;display:grid;gap:0;border-top:1px solid var(--linha)}
.fd-lagd__dados>div{display:grid;grid-template-columns:minmax(0,1.1fr) 1fr;gap:18px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--linha)}
.fd-lagd__dados :is(dt,.t-dt){font-family:var(--f-d);font-weight:500;font-size:clamp(24px,2.4vw,36px);letter-spacing:-.03em;line-height:1.05;color:var(--xisto);white-space:nowrap}
.fd-lagd__dados>div:last-child :is(dt,.t-dt){font-family:var(--f-italico);font-style:italic;font-weight:400;letter-spacing:-.01em;color:var(--azeitona)}
.fd-lagd__dados :is(dd,.t-dd){margin:0;font-size:15px;line-height:1.4;color:var(--tx-cla)}
.fd-lagd .fd-cta{margin-top:30px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px}
.fd-lagd__painel{position:relative;display:grid;gap:clamp(18px,3vw,34px);padding:clamp(20px,2.6vw,34px);border-radius:var(--r-l);background:var(--xisto);color:var(--cal);text-decoration:none;overflow:hidden;transition:transform .7s var(--ease)}
.fd-lagd__painel:hover{transform:translateY(-4px)}
.fd-lagd__estado{display:flex;flex-wrap:wrap;gap:8px 16px;font-family:var(--f-t);font-weight:500;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--cal)}
.fd-lagd__estado :is(b,.t-b){font-weight:500;color:var(--ouro);display:inline-flex;align-items:center;gap:8px}
.fd-lagd__estado :is(i,.t-i){width:8px;height:8px;border-radius:50%;background:var(--ouro);animation:fd-pulso 2.4s infinite}
.fd-lagd__maq{list-style:none;margin:0;padding:0;display:flex;gap:clamp(8px,1.4vw,18px)}.fd-lagd__maq :is(li,.t-li){flex:1 1 0;min-width:0}
.fd-lagd__maq :is(li,.t-li){display:grid;gap:12px;justify-items:center;padding:clamp(12px,1.6vw,20px) 6px;border:1px solid var(--linha-esc);border-radius:var(--r);background:rgba(242,240,231,.03);text-align:center}
.fd-lagd__maq svg{width:100%;height:auto;max-height:170px;color:var(--cal)}
.fd-lagd__maq :is(span,.t-span){font-family:var(--f-t);font-weight:500;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--tx-esc)}
.fd-lagd__fio{width:100%;height:24px;margin-top:-6px}
.fd-lagd__fio path{fill:none;stroke:var(--ouro);stroke-width:2;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1}
.fd-lagd__pe{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid var(--linha-esc);font-size:15px;font-weight:500}
.fd-lagd__pe .seta{width:20px;height:12px;color:var(--ouro);transition:transform .5s var(--ease)}
.fd-lagd__painel:hover .fd-lagd__pe .seta{transform:translateX(6px)}
@media(max-width:599px){.fd-lagd__maq{gap:6px}.fd-lagd__maq :is(li,.t-li){padding:10px 2px}.fd-lagd__maq :is(span,.t-span){font-size:9.5px;letter-spacing:.06em}.fd-lagd__dados>div{grid-template-columns:1fr;gap:4px}}
@media(prefers-reduced-motion:reduce){.fd-lagd__fio path{stroke-dashoffset:0}}
/* crédito Onlyprogress no fim do rodapé */
.fd-legal__cred{flex:1 1 100%;display:flex;justify-content:flex-end;padding-top:16px;border-top:1px solid rgba(242,240,231,.10);color:rgba(242,240,231,.62)}
.fd-legal__cred .op-credit:hover{color:var(--cal)!important}
@media(max-width:899px){.fd-legal__cred{justify-content:flex-start}}
.fd-legal__id .num{white-space:nowrap}

/* ===== Tipos de azeite: escada das categorias, maturação, variedades (29/10) ===== */
.fd-esc{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fd-esc :is(li,.t-li){display:grid;gap:14px;padding:20px 22px;border-radius:var(--r);border:1px solid var(--linha);background:var(--branco);margin-left:calc(var(--k) * clamp(0px,3vw,56px));transition:border-color .5s var(--ease)}
.fd-esc :is(li,.t-li).nosso{background:var(--xisto);color:var(--cal);border-color:var(--xisto)}
.fd-esc :is(li,.t-li):not(.nosso){opacity:.92}
.fd-esc__n{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.fd-esc__n .num{font-family:var(--f-t);font-size:12px;font-weight:500;color:var(--azeitona);min-width:1.2em}
.fd-esc :is(li,.t-li).nosso .fd-esc__n .num{color:var(--ouro)}
.fd-esc__n :is(h3,.t-h3){font-family:var(--f-d);font-weight:500;font-size:clamp(22px,2.2vw,32px);letter-spacing:-.025em;line-height:1.05;margin:0}
.fd-esc__n :is(b,.t-b){font-family:var(--f-t);font-weight:500;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--xisto);background:var(--ouro);padding:6px 10px;border-radius:6px;margin-left:auto}
.fd-esc :is(dl,.t-dl){margin:0;display:grid;gap:10px}
.fd-esc :is(dl,.t-dl)>div{display:grid;grid-template-columns:5.5rem 1fr;gap:12px;align-items:baseline}
.fd-esc :is(dt,.t-dt){font-family:var(--f-t);font-weight:500;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--azeitona)}
.fd-esc :is(li,.t-li).nosso :is(dt,.t-dt){color:var(--ouro)}
.fd-esc :is(dd,.t-dd){margin:0;font-size:15px;line-height:1.45;color:var(--tx-cla)}
.fd-esc :is(li,.t-li).nosso :is(dd,.t-dd){color:var(--tx-esc)}
.fd-esc :is(dl,.t-dl)>div:first-child :is(dd,.t-dd){font-family:var(--f-d);font-weight:500;font-size:20px;letter-spacing:-.02em;color:inherit}
@media(min-width:960px){.fd-esc :is(li,.t-li){grid-template-columns:minmax(0,1.1fr) minmax(0,2fr);align-items:center;padding:22px 28px}.fd-esc :is(dl,.t-dl){grid-template-columns:.7fr 1.6fr 1fr;gap:24px}.fd-esc :is(dl,.t-dl)>div{grid-template-columns:1fr;gap:6px}.fd-esc__n :is(b,.t-b){margin-left:0}}
@media(max-width:599px){.fd-esc :is(li,.t-li){margin-left:calc(var(--k) * 8px)}}

.fd-colheita__azt{display:grid;justify-items:center;gap:16px}
.fd-colheita__estado{font-family:var(--f-t);font-weight:500;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--cor);transition:color .4s}
.fd-colheita__med{display:grid;gap:12px;margin-top:26px;max-width:520px}
.fd-colheita__med>div{display:grid;grid-template-columns:minmax(0,1fr) 46%;align-items:center;gap:16px;font-size:14px;color:var(--tx-esc)}
.fd-colheita__med :is(i,.t-i){position:relative;height:6px;border-radius:6px;background:rgba(242,240,231,.12);overflow:hidden}
.fd-colheita__med :is(i,.t-i)::after{content:"";position:absolute;inset:0;background:var(--cor);border-radius:inherit;transform-origin:left;transform:scaleX(var(--v,.5));transition:transform .5s var(--ease),background .4s}
@media(max-width:599px){.fd-colheita__med>div{grid-template-columns:1fr;gap:6px}}

.fd-var{display:grid;gap:14px}
@media(min-width:700px){.fd-var{grid-template-columns:1fr 1fr}}
@media(min-width:1200px){.fd-var{grid-template-columns:1.15fr 1fr 1fr 1.15fr}}
.fd-var__c{display:flex;flex-direction:column;gap:16px;padding:24px;border-radius:var(--r);border:1px solid var(--linha);background:var(--branco)}
.fd-var__c header{display:grid;gap:4px}
.fd-var__c :is(h3,.t-h3){font-family:var(--f-italico);font-style:italic;font-weight:400;font-size:clamp(30px,2.6vw,40px);letter-spacing:-.01em;line-height:1;color:var(--azeitona);margin:0}
.fd-var__c header :is(span,.t-span){font-family:var(--f-t);font-weight:500;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--tx-cla)}
.fd-var__c :is(p,.t-p){font-size:15px;line-height:1.5;color:var(--tx-cla);margin:0}
.fd-var__bs{display:grid;gap:9px;margin-top:auto}
.fd-var__b{display:grid;grid-template-columns:5.2rem 1fr;align-items:center;gap:12px;font-size:13px;color:var(--xisto)}
.fd-var__b :is(i,.t-i){position:relative;height:5px;border-radius:5px;background:var(--cal-2);overflow:hidden}
.fd-var__b :is(i,.t-i)::after{content:"";position:absolute;inset:0;background:var(--azeitona);border-radius:inherit;transform-origin:left;transform:scaleX(var(--v));transition:transform 1.2s var(--ease-io)}
.fd-var__c footer{display:grid;gap:4px;padding-top:14px;border-top:1px solid var(--linha);font-size:14px;color:var(--xisto)}

/* ===== Página inicial: "Saber escolher um azeite" (29/10) ===== */
.fd-saber__l{list-style:none;margin:0;padding:0;border-top:1px solid var(--linha)}
.fd-saber__l :is(li,.t-li){border-bottom:1px solid var(--linha)}
.fd-saber__l a{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px 20px;align-items:start;padding:26px 0;color:inherit;text-decoration:none;position:relative}
.fd-saber__l a::before{content:"";position:absolute;inset:0 calc(var(--g) * -.5);border-radius:var(--r);background:var(--branco);opacity:0;transition:opacity .5s var(--ease);z-index:-1}
.fd-saber__l a:hover::before{opacity:1}
.fd-saber__ic{width:96px;height:auto;fill:none;stroke:var(--azeitona);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.fd-saber__t :is(h3,.t-h3){font-family:var(--f-d);font-weight:500;font-size:clamp(24px,2.6vw,38px);letter-spacing:-.03em;line-height:1.05;margin:8px 0 10px}
.fd-saber__t :is(p,.t-p){font-size:16px;line-height:1.5;color:var(--tx-cla);max-width:52ch;margin:0}
.fd-saber__ir{grid-column:2;display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:500;margin-top:6px}
.fd-saber__ir .seta{width:18px;height:12px;color:var(--azeitona);transition:transform .5s var(--ease)}
.fd-saber__l a:hover .fd-saber__ir .seta{transform:translateX(6px)}
.fd-saber__pe{margin-top:26px}
@media(min-width:900px){
  .fd-saber__l a{grid-template-columns:150px minmax(0,1fr) auto;gap:40px;align-items:center;padding:34px 0}
  .fd-saber__ic{width:136px}
  .fd-saber__ir{grid-column:auto;margin:0}
}
/* ícones: escada desenha-se, azeitona amadurece, azeitonas nascem no ramo */
.fd-saber__ic .o{stroke:var(--ouro)}
.fd-saber__ic .of{fill:var(--ouro);stroke:none}
.fd-saber__ic .d{stroke-dasharray:1;stroke-dashoffset:1}

.fd-saber.on .fd-saber__ic .d{animation:fd-sab-desenha 1.6s var(--ease-io) forwards calc(var(--k,0) * .2s + .1s)}
.fd-saber.on .fd-saber__ic .o.d{animation-delay:.9s}
.fd-saber__ic .p{opacity:0}
.fd-saber.on .fd-saber__ic .p{animation:fd-sab-gota 2.8s var(--ease) 1.4s infinite}
@keyframes fd-sab-desenha{to{stroke-dashoffset:0}}
@keyframes fd-sab-gota{0%{opacity:0;transform:translateY(-6px)}20%{opacity:1;transform:none}70%{opacity:1;transform:translate(26px,16px)}100%{opacity:0;transform:translate(26px,22px)}}
.fd-saber__ic .azt{fill:#93A23A;stroke:var(--azeitona)}
.fd-saber.on .fd-saber__ic .azt{animation:fd-sab-madura 6s ease-in-out infinite alternate}
@keyframes fd-sab-madura{0%{fill:#93A23A}45%{fill:#C9A944}100%{fill:#5C2A3A}}
.fd-saber__ic .brilho{stroke:rgba(250,249,243,.8)}
.fd-saber__ic .b{fill:#93A23A;stroke:var(--azeitona);transform-box:fill-box;transform-origin:50% 0;transform:scale(0)}
.fd-saber__ic .b3{fill:#C9A944}.fd-saber__ic .b4{fill:#5C2A3A}
.fd-saber.on .fd-saber__ic .b{animation:fd-sab-nasce .9s cubic-bezier(.34,1.56,.64,1) forwards}
.fd-saber.on .fd-saber__ic .b1{animation-delay:.5s}.fd-saber.on .fd-saber__ic .b2{animation-delay:.7s}.fd-saber.on .fd-saber__ic .b3{animation-delay:.9s}.fd-saber.on .fd-saber__ic .b4{animation-delay:1.1s}
@keyframes fd-sab-nasce{to{transform:scale(1)}}
.fd-saber__l a:hover .b{animation:fd-sab-balanca 1.4s ease-in-out infinite!important;transform:scale(1)}
@keyframes fd-sab-balanca{0%,100%{transform:rotate(0)}50%{transform:rotate(7deg)}}
@media(prefers-reduced-motion:reduce){.fd-saber__ic *{animation:none!important;stroke-dashoffset:0!important;transform:none!important;opacity:1!important}}

/* ===== Quinta das Fiandeiras: hospitalidade :is(em,.t-em) 2027 (29/10) ===== */
.fd-q27{display:flex;align-items:center;gap:18px;margin-top:30px;padding:16px 18px;border:1px solid var(--linha-esc);border-radius:var(--r);color:var(--cal);text-decoration:none;max-width:480px;transition:border-color .5s var(--ease),background .5s var(--ease)}
.fd-q27:hover{border-color:var(--ouro);background:rgba(201,169,68,.06)}
.fd-q27__ano{font-family:var(--f-italico);font-style:italic;font-size:34px;line-height:1;color:var(--ouro);flex:none}
.fd-q27__t{display:grid;gap:3px;font-size:14px;line-height:1.4;color:var(--tx-esc)}
.fd-q27__t :is(b,.t-b){font-weight:500;font-size:15px;color:var(--cal)}
.fd-q27 .seta{width:18px;height:12px;flex:none;margin-left:auto;color:var(--ouro);transition:transform .5s var(--ease)}
.fd-q27:hover .seta{transform:translateX(5px)}
.fd-hosp{padding:clamp(72px,9vw,140px) 0}
.fd-hosp__topo{display:grid;gap:40px;align-items:end}
@media(min-width:960px){.fd-hosp__topo{grid-template-columns:1.1fr 1fr;gap:80px}}
.fd-hosp :is(h2,.t-h2){font-size:clamp(44px,6vw,104px);line-height:.95}
.fd-hosp__ano{display:grid;gap:6px;justify-items:start}
.fd-hosp__ano .num{font-family:var(--f-italico);font-style:italic;font-weight:400;font-size:clamp(96px,16vw,240px);line-height:.85;letter-spacing:-.02em;color:var(--ouro)}
.fd-hosp__ano svg{width:100%;height:46px}
.fd-hosp__ano path{fill:none;stroke:var(--linha-esc);stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 2.4s var(--ease-io)}
.fd-hosp.on .fd-hosp__ano path{stroke-dashoffset:0;stroke:var(--ouro)}
.fd-hosp__ano :is(small,.t-small){font-family:var(--f-t);font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--tx-esc)}
.fd-hosp__l{list-style:none;margin:56px 0 0;padding:0;border-top:1px solid var(--linha-esc)}
.fd-hosp__l :is(li,.t-li){display:grid;grid-template-columns:7rem 1fr;gap:20px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--linha-esc)}
.fd-hosp__l :is(p,.t-p){margin:0;font-size:clamp(17px,1.5vw,21px);line-height:1.45;color:var(--cal)}
.fd-hosp__pe{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px 40px;margin-top:40px}
.fd-hosp__pe :is(address,.t-address){font-style:normal;display:grid;gap:6px;color:var(--tx-esc)}
@media(max-width:599px){.fd-hosp__l :is(li,.t-li){grid-template-columns:1fr;gap:6px}.fd-q27{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.fd-hosp__ano path{stroke-dashoffset:0}}

/* ===== Brasão da Quinta das Fiandeiras como marca de água (29/10) ===== */
.fd-com-brasao{position:relative;overflow:hidden;isolation:isolate}
.fd-com-brasao>*:not(.fd-brasao){position:relative;z-index:1}
.fd-brasao{position:absolute;z-index:0;pointer-events:none;aspect-ratio:990/1240;background:var(--ouro);opacity:.07;-webkit-mask:url(../img/brasao-fiandeiras.svg) center/contain no-repeat;mask:url(../img/brasao-fiandeiras.svg) center/contain no-repeat;will-change:transform;transform:rotate(calc(var(--rot,0) * 1deg))}
.fd-brasao--q{--rot:-8;width:min(78vw,760px);right:-14%;bottom:-18%}
.fd-brasao--h{--rot:6;width:min(90vw,900px);right:-22%;top:-12%;opacity:.06}
.fd-brasao--claro{--rot:-6;width:min(70vw,640px);right:-10%;top:4%;background:var(--azeitona);opacity:.04}
@media(max-width:899px){.fd-brasao--q{width:120vw;right:-45%;bottom:-6%}.fd-brasao--h{width:130vw;right:-50%;top:2%}.fd-brasao--claro{width:110vw;right:-40%;top:auto;bottom:6%}}

/* ===== Guia do azeite: hero de destaque (29/10) ===== */
.fd-gh{max-width:none;margin:0;padding:clamp(120px,14vw,170px) 0 0;min-height:min(100svh,980px);display:flex;flex-direction:column;background:var(--xisto);overflow:hidden}
.fd-gh__in{flex:1;max-width:var(--max);width:100%;margin:auto;padding:0 var(--g);display:grid;gap:32px;align-items:center}
@media(min-width:960px){.fd-gh__in{grid-template-columns:1.15fr .85fr;gap:60px}}
.fd-gh :is(h1,.t-h1){font-size:clamp(58px,9vw,150px);line-height:.9;color:var(--cal)}
.fd-gh :is(h1,.t-h1) :is(em,.t-em){color:var(--ouro)}
.fd-gh .fd-lead{color:rgba(242,240,231,.8);max-width:36ch}
.fd-gh .fd-cta{margin-top:34px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px}
.fd-gh .fd-link{color:var(--cal)}
.fd-gh__vis{position:relative;justify-self:center;width:min(100%,420px)}
.fd-gh__vis svg{width:100%;height:auto;overflow:visible;fill:none;stroke-linecap:round;stroke-linejoin:round}
.fd-gh__vis .ramo,.fd-gh__vis .nervura{stroke:var(--cal);stroke-width:2.5;opacity:.7}
.fd-gh__vis .folha{fill:#4E5A2B;stroke:var(--cal);stroke-width:2.5}
.fd-gh__vis .azt{stroke:var(--cal);stroke-width:2.5;fill:#93A23A;animation:fd-gh-madura 12s ease-in-out infinite}
.fd-gh__vis .brilho{stroke:rgba(250,249,243,.75);stroke-width:5}
.fd-gh__vis .gota{fill:var(--ouro);animation:fd-gh-gota 3s cubic-bezier(.55,0,.75,.3) infinite}
.fd-gh__vis .poca{fill:rgba(201,169,68,.35)}
.fd-gh__vis .onda{stroke:var(--ouro);stroke-width:1.5;transform-box:fill-box;transform-origin:center;animation:fd-gh-onda 3s ease-out infinite}
@keyframes fd-gh-madura{0%,22%{fill:#93A23A}33%,55%{fill:#C9A944}66%,88%{fill:#5C2A3A}100%{fill:#93A23A}}
@keyframes fd-gh-gota{0%{transform:translateY(-14px);opacity:0}12%{opacity:1}70%{transform:translateY(50px);opacity:1}76%,100%{transform:translateY(54px);opacity:0}}
@keyframes fd-gh-onda{0%,68%{transform:scale(.3);opacity:0}74%{opacity:1}100%{transform:scale(1.25);opacity:0}}
.fd-gh__est{position:relative;height:20px;margin-top:10px;text-align:center}
.fd-gh__est :is(span,.t-span){position:absolute;inset:0;font-family:var(--f-t);font-weight:500;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ouro);opacity:0;animation:fd-gh-est 12s infinite}
.fd-gh__est :is(span,.t-span):nth-child(2){animation-delay:4s}.fd-gh__est :is(span,.t-span):nth-child(3){animation-delay:8s}
@keyframes fd-gh-est{0%,2%{opacity:0;transform:translateY(6px)}6%,28%{opacity:1;transform:none}32%,100%{opacity:0;transform:translateY(-6px)}}
.fd-gh__idx{max-width:var(--max);width:100%;margin:clamp(40px,5vw,72px) auto 0;padding:0 var(--g) clamp(28px,3vw,44px);display:flex;flex-wrap:wrap;border-top:1px solid var(--linha-esc)}
.fd-gh__idx a{flex:1 1 50%;min-width:0;display:flex;align-items:center;gap:14px;padding:20px 12px 8px 0;color:var(--cal);text-decoration:none;transition:opacity .4s var(--ease)}
.fd-gh__idx .fd-saber__ic{width:64px;flex:none;stroke:var(--cal)}
.fd-gh__idx :is(span,.t-span){display:grid;gap:3px;font-size:13.5px;line-height:1.35;color:var(--tx-esc)}
.fd-gh__idx :is(b,.t-b){font-weight:500;font-size:15px;color:var(--cal)}
@media(min-width:960px){.fd-gh__idx a{flex:1 1 0;padding-top:26px}.fd-gh__idx .fd-saber__ic{width:76px}}
@media(hover:hover){.fd-gh__idx:hover a{opacity:.45}.fd-gh__idx a:hover{opacity:1}}
@media(max-width:599px){.fd-gh__vis{width:min(64vw,260px)}.fd-gh__idx a{flex-basis:100%;padding:14px 0 6px}.fd-gh__idx .fd-saber__ic{width:54px}}
@media(prefers-reduced-motion:reduce){.fd-gh__vis *{animation:none!important}.fd-gh__est :is(span,.t-span):first-child{opacity:1}}
@media(min-width:960px){
  .fd-gh{padding-top:clamp(110px,11vh,140px);min-height:100svh;max-height:none}
  .fd-gh__vis{width:auto}
  .fd-gh__vis svg{height:min(50vh,440px);width:auto;display:block;margin:auto}
  .fd-gh :is(h1,.t-h1){font-size:clamp(58px,min(8vw,13vh),150px)}
  .fd-gh__idx{margin-top:clamp(24px,3.5vh,56px)}
}
@media(min-width:960px){
  .fd-gh{padding-top:clamp(104px,12vh,130px)}
  .fd-gh__vis svg{height:min(40vh,400px)}
  .fd-gh :is(h1,.t-h1){font-size:clamp(56px,min(8vw,11.5vh),150px)}
  .fd-gh .fd-cta{margin-top:26px}
  .fd-gh__idx{padding-bottom:18px}
  .fd-gh__idx a{padding-top:18px}
}
/* o cabeçalho ocupa espaço por cima: o hero do guia enche só o resto do ecrã */
.fd-gh{padding-top:clamp(44px,7vw,72px);min-height:calc(100svh - 94px)}
@media(min-width:960px){.fd-gh{padding-top:clamp(28px,5vh,64px);min-height:calc(100svh - 94px)}.fd-gh__vis svg{height:min(44vh,420px)}}

/* ---------- Brasão da Quinta :is(em,.t-em) mais secções grandes (29/10) ---------- */
.fd-com-brasao{overflow:hidden;overflow:clip}
.fd-brasao--camp,.fd-brasao--saber,.fd-brasao--lagar,.fd-brasao--escada,.fd-brasao--var{background:var(--azeitona);opacity:.05}
.fd-brasao--camp{--rot:-9;width:min(46vw,600px);left:-9%;top:16%}
.fd-brasao--saber{--rot:7;width:min(40vw,520px);right:-6%;top:3%}
.fd-brasao--manif{--rot:-5;width:min(40vw,520px);right:-6%;top:6%;opacity:.06}
.fd-brasao--lagar{--rot:8;width:min(46vw,600px);right:-8%;bottom:-14%}
.fd-brasao--escada{--rot:-7;width:min(40vw,520px);left:-8%;top:3%}
.fd-brasao--var{--rot:6;width:min(36vw,480px);right:-5%;top:3%}
@media(max-width:899px){
  .fd-brasao--camp,.fd-brasao--saber,.fd-brasao--lagar,.fd-brasao--escada,.fd-brasao--var{opacity:.045}
  .fd-brasao--camp{width:110vw;left:-42%;top:2%}
  .fd-brasao--saber{width:100vw;right:-40%;top:0}
  .fd-brasao--manif{width:110vw;right:-45%;top:-10%}
  .fd-brasao--lagar{width:110vw;right:-42%;bottom:-4%}
  .fd-brasao--escada{width:110vw;left:-42%;top:0}
  .fd-brasao--var{width:100vw;right:-42%;top:-2%}
}
/* Variedades: cinco cartões (Galega acrescentada 29/10) */
@media(min-width:700px) and (max-width:1199px){.fd-var__c:last-child{grid-column:1/-1}}
@media(min-width:1200px){.fd-var{grid-template-columns:repeat(5,1fr)}.fd-var__c{padding:22px 20px}.fd-var__c :is(h3,.t-h3){font-size:clamp(28px,2.3vw,38px)}}
.fd-var__bs{margin-top:auto}

/* ---------- Receitas: cartões desenvolvidos (29/10) ---------- */
.fd-rc{width:min(80vw,420px);gap:12px}
.fd-rc__img{aspect-ratio:4/5}
.fd-rc__n{font-size:12px;letter-spacing:.1em;opacity:.55;margin-top:6px}
.fd-rc :is(p,.t-p){font-size:15px;line-height:1.5;margin:0;color:var(--tx-cla);max-width:38ch}
.esc .fd-rc :is(p,.t-p){color:var(--tx-esc)}
.fd-rc__meta{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:6px 0 0;padding:0}
.fd-rc__meta :is(li,.t-li){font-size:12px;letter-spacing:.02em;padding:6px 10px;border:1px solid var(--linha);border-radius:6px}
.esc .fd-rc__meta :is(li,.t-li){border-color:var(--linha-esc)}
.fd-rc__img--il{display:grid;place-items:end start;padding:26px;color:var(--xisto)}
.fd-rc__img--il svg{position:absolute;inset:12% 12% 26%;width:76%;height:62%;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;opacity:.85}
.fd-rc__img--il svg .pt{fill:currentColor;stroke:none}
.fd-rc__img--il :is(span,.t-span){position:relative;font-family:var(--f-italico);font-style:italic;font-size:clamp(46px,4.6vw,68px);line-height:.92;color:inherit}
.fd-rc__img--biscoito{background:var(--ouro)}
.fd-rc__img--polvo{background:var(--madura);color:var(--cal)}
.fd-rc__img--laranja{background:#D9A441}
.fd-rc__img--figo{background:var(--azeitona);color:var(--cal)}
.fd-rc__img--il svg :not(.pt){stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.6s var(--ease) calc(var(--k,0) * .12s)}
.fd-rc__img--il svg [pathLength]{stroke-dasharray:1}
.fd-rcs.on .fd-rc__img--il svg :not(.pt){stroke-dashoffset:0}
.fd-rc__img--il svg .pt{opacity:0;transition:opacity .8s var(--ease) 1.2s}
.fd-rcs.on .fd-rc__img--il svg .pt{opacity:1}
.fd-rc:hover .fd-rc__img--il svg{transform:rotate(-4deg) scale(1.03);transition:transform 1.2s var(--ease)}
.fd-carril__pe{display:flex;align-items:center;gap:18px;margin-top:28px}
.fd-carril__prog{flex:1;height:1px;background:var(--linha);position:relative;overflow:hidden}
.esc .fd-carril__prog{background:var(--linha-esc)}
.fd-carril__prog :is(i,.t-i){position:absolute;inset:0;background:currentColor;transform-origin:left;transform:scaleX(var(--p,.17))}
.fd-carril__cont{font-size:13px;letter-spacing:.06em;white-space:nowrap}
.fd-carril__cont :is(b,.t-b){font-weight:500}
@media(prefers-reduced-motion:reduce){.fd-rc__img--il svg :not(.pt){stroke-dashoffset:0;transition:none}.fd-rc__img--il svg .pt{opacity:1}}

/* Receita da avó Virgínia */
.fd-avo .wrap{display:grid;gap:40px}
@media(min-width:960px){.fd-avo .wrap{grid-template-columns:1.1fr 1fr;gap:80px;align-items:start}}
.fd-avo__d{display:flex;flex-wrap:wrap;gap:0;margin:32px 0 0;border-top:1px solid var(--linha)}
.fd-avo__d div{flex:1 1 30%;padding:18px 16px 0 0}
.fd-avo__d :is(dt,.t-dt){font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--azeitona)}
.fd-avo__d :is(dd,.t-dd){margin:6px 0 0;font-size:clamp(24px,2.4vw,34px);letter-spacing:-.02em}
.fd-avo__ing{background:var(--branco);border:1px solid var(--linha);border-radius:var(--r);padding:clamp(24px,3vw,40px)}
.fd-avo__ing :is(h3,.t-h3){margin:0 0 18px}
.fd-avo__ing :is(ul,.t-ul){list-style:none;margin:0;padding:0;columns:2 220px;column-gap:28px}
.fd-avo__ing :is(li,.t-li){break-inside:avoid;padding:10px 0;border-bottom:1px solid var(--linha);font-size:15px}
.fd-avo__pe{margin:16px 0 0;font-size:14px;color:var(--tx-cla)}
.fd-carril{scroll-padding-inline:var(--g)}
.fd-rc{width:min(78vw,380px)}
.fd-rc__img{aspect-ratio:1/1}
@media(min-width:900px){.fd-rc__img{aspect-ratio:6/5}}
.fd-rc__img--il :is(span,.t-span){font-size:clamp(40px,3.8vw,58px)}
.fd-rc__img--il svg{inset:10% 22% 34%;width:56%;height:56%}
.fd-rc__img img[src*="sopa"]{transform:scale(1.32);transform-origin:50% 8%}
.fd-rc:hover .fd-rc__img img[src*="sopa"]{transform:scale(1.38)}
.fd-avo__cab .fd-lead{margin-top:24px}

/* ---------- Seletor de idioma PT / EN (29/10) ---------- */
.fd-lang{display:flex;align-items:center;gap:2px;font-size:13px;font-weight:500;letter-spacing:.04em}
.fd-lang a{padding:8px 6px;text-decoration:none;color:inherit;opacity:.5;transition:opacity .3s var(--ease)}
.fd-lang a[aria-current]{opacity:1;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.fd-lang a:hover{opacity:1}
.fd-gaveta__pe .fd-lang{font-size:15px;margin-top:6px}
@media(max-width:1279px){.fd-top .fd-lang{display:none}}
/* cabeçalho compacto: mais largo e sem cortar o botão (29/10) */
.fd-top .fd-btn,.fd-top .fd-menu{flex:none}
@media(min-width:1060px){.fd-top.compacto{max-width:min(1120px,calc(100vw - 48px))}.fd-top.compacto .fd-lang{display:none}.fd-top.compacto .fd-nav{gap:20px}}
.fd-top .fd-logo{flex:none}
