/* ===== Joel Abreu · Ateliê — site público (direção Papel) ===== */
/* deploy trigger */
:root{
  --paper:#F1EAD9; --paper-2:#E8DFC9; --paper-card:#FCF8EE; --paper-ink:#211B12; --ink:#14120D;
  --gold:#C9A157; --gold-lt:#E9D49A; --gold-dk:#7A5C28;
  --goldgrad:linear-gradient(168deg,#EBD8A2 0%,#CBA45C 40%,#9C7838 74%,#D2AC60 100%);
  --moss:#4F5E3A; --moss-dk:#39482A; --moss-deep:#2C3720; --moss-lt:#8A9470;
  --line-moss:rgba(138,148,112,.35);
  --serif:"Cormorant Garamond",Georgia,serif;
  --caps:"Cinzel",serif;
  --sans:"Manrope",system-ui,sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--paper);color:var(--paper-ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;}
h1,h2,h3{font-family:var(--serif);font-weight:500;margin:0;line-height:1.08;}
p{margin:0;}
img{display:block;}
a{color:inherit;}
.wrap{max-width:1140px;margin:0 auto;padding:0 32px;}
.eyebrow{font-family:var(--caps);font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--moss);}
.lede{font-family:var(--serif);font-style:italic;font-size:21px;color:#5a4f3c;line-height:1.45;}

@media (prefers-reduced-motion: no-preference){
  .rv{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease;}
  .rv.in{opacity:1;transform:none;}
}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;font-family:var(--caps);
  font-size:12px;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;
  padding:17px 28px;border:1px solid transparent;transition:background .25s,color .25s,border-color .25s;}
.btn svg{width:17px;height:17px;flex:none;}
.btn-primary{background:var(--moss);color:var(--paper);}
.btn-primary:hover{background:var(--moss-dk);}
.btn-ghost{border-color:var(--moss);color:var(--moss-dk);}
.btn-ghost:hover{background:rgba(138,148,112,.14);}
.tlink{display:inline-flex;align-items:center;gap:9px;font-family:var(--caps);font-size:11px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--moss-dk);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:5px;}
.tlink:hover{color:var(--ink);border-bottom-color:var(--gold-dk);}
.tlink .arr{font-family:var(--serif);font-size:15px;line-height:1;}

.hdr{position:sticky;top:0;z-index:60;background:rgba(241,234,217,.92);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line-moss);}
.hdr-in{max-width:1140px;margin:0 auto;padding:0 32px;height:72px;display:flex;align-items:center;gap:28px;}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;}
.brand img{height:34px;width:auto;}
.brand span{font-family:var(--caps);font-size:15px;letter-spacing:.24em;color:var(--paper-ink);}
.hdr nav{margin-left:auto;display:flex;gap:30px;}
.hdr nav a{font-family:var(--caps);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;
  color:#5a4f3c;text-decoration:none;padding:6px 0;border-bottom:1px solid transparent;}
.hdr nav a:hover{color:var(--moss-dk);border-bottom-color:var(--gold);}
.hdr .btn{padding:12px 20px;font-size:10.5px;}

.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line-moss);}
.hero-in{position:relative;z-index:2;max-width:1140px;margin:0 auto;padding:104px 32px 112px;
  min-height:600px;display:flex;align-items:center;}
.hero-copy{display:flex;flex-direction:column;align-items:flex-start;text-align:left;max-width:600px;}
.hero-sig{width:230px;margin-bottom:30px;}
.hero h1{font-size:clamp(44px,5.4vw,70px);max-width:13ch;color:var(--paper-ink);}
.hero h1 em{font-style:italic;color:var(--moss);}
.hero .eyebrow{margin-bottom:20px;}
.hero .lede{margin-top:22px;max-width:46ch;}
.cta-row{display:flex;gap:16px;margin-top:40px;flex-wrap:wrap;justify-content:center;}
.hero .cta-row{justify-content:flex-start;}
.hero-art{position:absolute;top:0;right:0;width:43%;height:100%;z-index:1;}
.hero-art .hero-vid,.hero-art .hero-art-fallback{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.hero-art .hero-art-fallback{display:none;}
@media (prefers-reduced-motion: reduce){
  .hero-art .hero-vid{display:none;}
  .hero-art .hero-art-fallback{display:block;}
}
.hero-art::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  box-shadow:inset 0 0 120px 30px rgba(20,18,13,.16);}

.sec{padding:110px 0;}
.sec-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;margin-bottom:64px;}
.sec-head .pinca{height:46px;}
.sec-head h2{font-size:clamp(34px,3.6vw,48px);}
.sec-head .lede{font-size:19px;max-width:50ch;}

.prods{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.prod{background:var(--paper-card);border:1px solid var(--line-moss);display:flex;flex-direction:column;}
.prod .slot-img{width:100%;height:265px;object-fit:cover;}
.prod-m{padding:26px 26px 30px;display:flex;flex-direction:column;gap:10px;flex:1;}
.prod-m .role{font-family:var(--caps);font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-dk);}
.prod-m h3{font-size:29px;}
.prod-m p{font-size:14.5px;color:#5a4f3c;line-height:1.65;}
.prod-m .tlink{margin-top:auto;align-self:flex-start;padding-top:14px;}

.gal{padding-bottom:110px;}
.gal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.gal-grid .slot-img{width:100%;height:310px;object-fit:cover;}
.gal-cap{margin-top:18px;text-align:center;font-family:var(--caps);font-size:9.5px;letter-spacing:.26em;
  text-transform:uppercase;color:var(--moss-lt);}

.steps-band{background:var(--paper-2);border-top:1px solid var(--line-moss);border-bottom:1px solid var(--line-moss);}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--line-moss);background:var(--paper-card);}
.step{padding:42px 36px 46px;border-right:1px solid var(--line-moss);}
.step:last-child{border-right:none;}
.step .no{font-family:var(--caps);font-size:36px;color:var(--moss-lt);line-height:1;}
.step h3{font-size:26px;margin-top:16px;}
.step p{font-size:14.5px;color:#5a4f3c;margin-top:10px;line-height:1.65;}
.steps-cta{margin-top:46px;display:flex;flex-direction:column;align-items:center;gap:18px;}
.steps-cta .meta{font-family:var(--caps);font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--moss);}

.chef-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:72px;align-items:center;}
.ph-chef{width:100%;height:540px;border:1px solid var(--line-moss);background:var(--paper-2);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;}
.ph-chef img{height:54px;opacity:.55;}
.ph-chef span{font-family:var(--caps);font-size:9.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--moss-lt);}
.chef-grid .slot-img{width:100%;height:540px;object-fit:cover;}
.chef-copy .eyebrow{margin-bottom:16px;}
.chef-copy h2{font-size:clamp(34px,3.4vw,46px);max-width:14ch;}
.chef-copy p{font-size:16px;color:#4a4234;margin-top:22px;max-width:54ch;}
.chef-copy .sig{width:215px;margin-top:36px;}

.end{background:radial-gradient(130% 95% at 50% 24%,#3a4628 0%,var(--moss-deep) 56%,#1c2415 100%);color:rgba(241,234,217,.78);}
.end-in{max-width:1140px;margin:0 auto;padding:120px 32px 0;display:flex;flex-direction:column;align-items:center;text-align:center;}
.end .ave{width:72px;margin-bottom:32px;}
.end h2{font-size:clamp(38px,4.4vw,58px);color:var(--paper);max-width:16ch;}
.end h2 em{font-style:italic;background:var(--goldgrad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.end .lede{color:rgba(241,234,217,.66);margin-top:20px;max-width:46ch;}
.end .cta-row{margin-top:42px;}
.end .btn-primary{background:var(--paper);color:var(--ink);}
.end .btn-primary:hover{background:#fff;}
.end .btn-ghost{border-color:rgba(201,161,87,.65);color:var(--gold-lt);}
.end .btn-ghost:hover{background:rgba(201,161,87,.12);}
.end .fone{margin-top:26px;font-family:var(--serif);font-style:italic;font-size:19px;color:rgba(241,234,217,.6);}
.end .fone a{color:var(--gold-lt);text-decoration:none;}
.end .fone a:hover{text-decoration:underline;}
.end-foot{width:100%;margin-top:88px;border-top:1px solid rgba(138,148,112,.28);
  padding:26px 0 30px;display:flex;align-items:center;justify-content:space-between;gap:18px;}
.end-foot span{font-family:var(--caps);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:rgba(241,234,217,.45);}
.end-foot img{height:30px;opacity:.85;}
.end-foot a{color:rgba(241,234,217,.6);text-decoration:none;}
.end-foot a:hover{color:var(--gold-lt);}

.wa-float{position:fixed;right:26px;bottom:26px;z-index:70;width:60px;height:60px;border-radius:50%;
  background:var(--moss-dk);display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 22px rgba(20,18,13,.32);transition:background .25s,transform .25s;}
.wa-float:hover{background:var(--moss);transform:translateY(-2px);}
.wa-float svg{width:28px;height:28px;}

@media (max-width:920px){
  .hdr nav{display:none;}
  .hero{display:flex;flex-direction:column-reverse;}
  .hero-in{min-height:0;padding:54px 24px 64px;}
  .hero-copy{max-width:none;}
  .hero-art{position:relative;width:100%;height:300px;}
  .prods,.gal-grid,.steps{grid-template-columns:1fr;}
  .step{border-right:none;border-bottom:1px solid var(--line-moss);}
  .step:last-child{border-bottom:none;}
  .chef-grid{grid-template-columns:1fr;gap:44px;}
  .chef-grid .slot-img,.ph-chef{height:420px;}
  .sec{padding:80px 0;}
  .wrap{padding:0 24px;}
  .end-foot{flex-direction:column;gap:12px;text-align:center;}
}

/* ===== Realces: grão de papel, hover, reveal de carregamento ===== */
body::before{content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}

.prod{overflow:hidden;transition:transform .35s ease,box-shadow .35s ease;}
.prod .slot-img{transition:transform .6s cubic-bezier(.2,.7,.2,1);}
.prod:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(20,18,13,.13);}
.prod:hover .slot-img{transform:scale(1.045);}
.tlink .arr{transition:transform .25s ease;}
.tlink:hover .arr{transform:translateX(5px);}

@media (prefers-reduced-motion: no-preference){
  .hero-copy>*{opacity:0;animation:heroUp .85s cubic-bezier(.2,.7,.2,1) forwards;}
  .hero-copy>*:nth-child(1){animation-delay:.10s;}
  .hero-copy>*:nth-child(2){animation-delay:.20s;}
  .hero-copy>*:nth-child(3){animation-delay:.30s;}
  .hero-copy>*:nth-child(4){animation-delay:.42s;}
  .hero-copy>*:nth-child(5){animation-delay:.54s;}
  .hero-art{animation:heroFade 1.3s ease .2s both;}
}
@keyframes heroUp{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:none;}}
@keyframes heroFade{from{opacity:0;transform:scale(1.05);}to{opacity:1;transform:none;}}
