*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;padding:0 0 74px;background:#F7F3EE;color:#3A3530;font-family:Lora,serif;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:#C4832A;text-decoration:none}
a:hover{color:#8f5d16}
input,textarea,select,button{font-family:inherit}

@keyframes gsobe{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes gbrilho{0%,100%{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.14)}}
@keyframes gpisca{0%,100%{opacity:1}50%{opacity:.3}}
@keyframes gflutua{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
.g-rev{animation:gsobe .7s cubic-bezier(.2,.7,.3,1) both}

/* hover states (substituem o atributo style-hover do Pencil) */
.g-navlink:hover{color:#E8A84A !important}
.g-card-hover:hover{box-shadow:0 14px 40px rgba(30,58,95,.16);transform:translateY(-3px)}
.g-card-hover--dark:hover{box-shadow:0 14px 40px rgba(30,58,95,.3);transform:translateY(-3px)}

/* menu mobile */
.g-mobile-menu{display:none}
.g-mobile-menu.is-open{display:flex}

/* placeholder de foto ainda nao entregue */
.g-photo-pending{background:#0f2038;border:1px dashed rgba(200,155,18,.5);display:flex;align-items:center;justify-content:center;text-align:center;padding:14px;font-family:Montserrat,sans-serif;font-weight:700;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:rgba(232,168,74,.75);line-height:1.5}

@media(max-width:859px){
  .g-2col{display:flex!important;flex-direction:column!important}
  .g-retrato{order:-1!important;margin:0 auto 22px!important}
  .g-so-desktop{display:none!important}
}
@media(min-width:860px){
  .g-so-mobile{display:none!important}
}
@media(min-width:860px){
  body{padding-bottom:0!important}
  .g-barra{display:none!important}
  .g-menu{display:flex!important}
  .g-menu-btn{display:none!important}
  .g-2col{display:grid!important;grid-template-columns:1.05fr .95fr!important;gap:clamp(32px,4vw,64px)!important;align-items:center!important;text-align:left!important;max-width:1080px!important;margin:0 auto!important}
  .g-esq{text-align:left!important;margin:0!important}
  .g-centro{justify-content:flex-start!important}
  .g-retrato{width:100%!important;max-width:none!important;margin:0!important}
  .g-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .g-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .g-h1{font-size:clamp(44px,4.6vw,66px)!important}
  .g-livro-2col{grid-template-columns:.85fr 1.15fr!important}
}
