/* ============================================================
   JORNADA MESTRA — Página de Links (link-in-bio)
   Identidade oficial (brandbook): Verde Bosque + Dourado Fosco + Marfim
   Tipografia: Playfair Display (serifada alta) + Pinyon Script (script)
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Libre+Baskerville:ital@0;1&family=Montserrat:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&display=swap');

:root{
  /* Paleta oficial do brandbook */
  --bosque:    #223234;  /* Verde Bosque — cor principal */
  --bosque-2:  #2A3B3C;
  --bosque-3:  #1A2828;
  --musgo:     #677065;  /* Verde Musgo */
  --marfim:    #F4F1EB;  /* Marfim — base/texto claro */
  --linho:     #DDD3C6;  /* Linho */
  --caramelo:  #A67C52;  /* Couro Caramelo */
  --madeira:   #6E4E37;  /* Madeira Escura */
  --dourado:   #B89A58;  /* Dourado Fosco — acento */
  --cafe:      #1F1E1C;  /* Café Profundo — texto escuro */

  --gold-1:    #E8D6A6;
  --gold-2:    #C6A968;
  --gold-3:    #9C8149;
  --grad-gold: linear-gradient(135deg,#EBDBAE 0%,#C6A968 46%,#9C8149 100%);

  --cream:     var(--marfim);
  --cream-dim: #C9C2B2;
  --taupe:     #8E9689;

  --line:      rgba(184,154,88,0.28);
  --line-soft: rgba(184,154,88,0.14);

  --ease: cubic-bezier(.22,.61,.36,1);
  --serif:  'Playfair Display', Georgia, serif;
  --serif-tag: 'Libre Baskerville', Georgia, serif;
  --mont:   'Montserrat', system-ui, sans-serif;
  --sans:   'Inter', system-ui, -apple-system, sans-serif;
}

*{ margin:0; padding:0; box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  font-family:var(--sans);
  background:var(--bosque) url('assets/bg.jpg') center/cover no-repeat fixed;
  color:var(--cream);
  min-height:100svh;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

body::before{
  content:'';
  position:fixed; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(120% 55% at 50% -12%, rgba(184,154,88,.16), transparent 58%),
    radial-gradient(90% 70% at 50% 116%, rgba(0,0,0,.40), transparent 62%);
}

.grain{
  position:fixed; inset:-50%; z-index:1; pointer-events:none; opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:grain 6s steps(6) infinite;
}
@keyframes grain{
  0%{transform:translate(0,0)} 20%{transform:translate(-4%,3%)}
  40%{transform:translate(3%,-5%)} 60%{transform:translate(-2%,4%)}
  80%{transform:translate(4%,2%)} 100%{transform:translate(0,0)}
}

img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }

.page{ position:relative; z-index:5; }

/* ============ IDENTIDADE — JORNADA MESTRA ============ */
.brand-hero{
  position:relative;
  min-height:70svh;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:6px;
  padding:60px 24px 44px;
  overflow:hidden;
}
.hero-glow{
  position:absolute; z-index:0; width:80vw; height:80vw; max-width:640px; max-height:640px;
  left:50%; top:38%; transform:translate(-50%,-50%);
  background:radial-gradient(circle, rgba(184,154,88,.20), rgba(184,154,88,.05) 44%, transparent 68%);
  filter:blur(20px); pointer-events:none;
}

.brasao{
  position:relative; z-index:2;
  width:min(44vw,180px); height:auto;
  filter:drop-shadow(0 18px 40px rgba(0,0,0,.5));
  animation:brasao-in 1.2s var(--ease) both;
}
@keyframes brasao-in{
  from{ opacity:0; transform:translateY(14px) scale(.94); }
  to{ opacity:1; transform:none; }
}

.brand-lockup{
  position:relative; z-index:2;
  margin:14px 0 0; line-height:0;
  animation:brasao-in 1.2s var(--ease) .1s both;
}
.brand-lockup img{
  width:min(84vw,440px); height:auto;
  filter:drop-shadow(0 14px 40px rgba(0,0,0,.4));
}

.divider{ position:relative; z-index:2; margin:22px 0 22px; opacity:.95; }
.divider svg{ display:block; }

.brand-tagline{
  position:relative; z-index:2;
  font-family:var(--serif-tag); font-style:italic; font-weight:400;
  font-size:clamp(.82rem,3vw,1.08rem); line-height:1.5;
  letter-spacing:.02em; text-align:center; color:var(--marfim);
}

/* ============ LINKS ============ */
.links{ position:relative; padding:8px 20px 54px; }
.links-wrap{
  width:100%; max-width:480px; margin-inline:auto;
  display:flex; flex-direction:column; gap:15px;
}

.link-card{
  position:relative; display:flex; align-items:center; gap:16px;
  min-height:92px; padding:20px 22px;
  border-radius:16px; border:1px solid var(--line);
  background-color:rgba(20,30,30,0.52);
  background-size:cover; background-position:center;
  backdrop-filter:blur(2px);
  overflow:hidden;
  transition:transform .35s var(--ease), border-color .35s var(--ease), box-shadow .35s var(--ease);
}
.link-card::before{
  content:''; position:absolute; inset:0; z-index:0;
  background:linear-gradient(100deg, rgba(20,30,30,.88) 30%, rgba(20,30,30,.44) 100%);
}
.link-card:hover{ transform:translateY(-3px); border-color:var(--dourado); box-shadow:0 14px 34px rgba(0,0,0,.32); }

/* Cartão de destaque em marfim sólido */
.link-card.cream{
  background-color:var(--marfim);
  background-image:none !important;
  border-color:rgba(184,154,88,.45);
}
.link-card.cream::before{ background:none; }
.link-card.cream .link-title{ color:var(--cafe); }
.link-card.cream .link-sub{ color:#5c5546; }
.link-card.cream .link-icon{ color:var(--madeira); }
.link-card.cream .link-arrow{ color:var(--madeira); border-color:rgba(110,78,55,.3); }
.link-card.cream:hover{ border-color:var(--madeira); }

.link-icon{
  position:relative; z-index:1; flex-shrink:0;
  width:38px; height:38px; display:grid; place-items:center;
  color:var(--dourado);
}
.link-icon svg{ width:26px; height:26px; }

.link-body{ position:relative; z-index:1; flex:1; min-width:0; }
.link-title{
  display:block;
  font-family:var(--mont); font-style:normal; font-weight:600;
  font-size:1.04rem; letter-spacing:.01em; line-height:1.25; color:var(--marfim);
}
.link-sub{
  display:block;
  margin-top:5px; font-family:var(--mont); font-size:.8rem; font-weight:400; line-height:1.45; color:var(--cream-dim);
}

.link-arrow{
  position:relative; z-index:1; flex-shrink:0;
  width:32px; height:32px; border-radius:50%; border:1px solid var(--line);
  display:grid; place-items:center; color:var(--dourado);
  transition:transform .35s var(--ease), background .35s var(--ease);
}
.link-arrow svg{ width:14px; height:14px; }
.link-card:hover .link-arrow{ transform:translateX(3px); background:rgba(184,154,88,.14); }

.foot{
  text-align:center; margin-top:34px;
  font-size:.72rem; letter-spacing:.06em; color:var(--taupe);
}

@media (min-width:640px){
  .brand-hero{ min-height:64svh; }
}
