/* JusTanuzzo — shared styles */
*, *::before, *::after{
  box-sizing:border-box;
}
@font-face{
  font-family:"Hanken Grotesk";
  src:url("assets/fonts/hanken-grotesk-latin.woff2") format("woff2");
  font-style:normal;
  font-weight:300 700;
  font-display:swap;
}
@font-face{
  font-family:"Instrument Serif";
  src:url("assets/fonts/instrument-serif-latin.woff2") format("woff2");
  font-style:normal;
  font-weight:400;
  font-display:swap;
}
@font-face{
  font-family:"Instrument Serif";
  src:url("assets/fonts/instrument-serif-italic-latin.woff2") format("woff2");
  font-style:italic;
  font-weight:400;
  font-display:swap;
}
@font-face{
  font-family:"JetBrains Mono";
  src:url("assets/fonts/jetbrains-mono-latin.woff2") format("woff2");
  font-style:normal;
  font-weight:400 500;
  font-display:swap;
}
:root{
  --cream: #F5F0E6;
  --cream-2: #EFE7D6;
  --paper: #E9DFC8;
  --ink: #1A1612;
  --ink-soft: #5B5247;
  --ink-mute: #6E6557;
  --terra: #9F3F32;
  --terra-deep: #7A2E22;
  --terra-soft: #C66B5C;
  --line: rgba(26,22,18,0.12);
  --line-soft: rgba(26,22,18,0.06);

  --display: "Hanken Grotesk", -apple-system, system-ui, sans-serif;
  --serif: "Instrument Serif", "Times New Roman", serif;
  --sans: "Hanken Grotesk", -apple-system, system-ui, sans-serif;
  --mono: "JetBrains Mono", ui-monospace, monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--cream);
  color:var(--ink);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.55;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
/* Focus da tastiera visibile (vince sugli outline:0 inline dei campi). Solo da tastiera, non al click. */
:focus-visible{outline:2px solid var(--terra) !important;outline-offset:2px;border-radius:2px}
img{max-width:100%;display:block}
::selection{background:var(--terra);color:var(--cream)}
.form-optin{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.45;color:var(--ink-soft)}
.form-optin input{margin-top:3px;accent-color:var(--terra);flex:0 0 auto}
.form-optin a,.form-note a{color:var(--terra);border-bottom:1px solid currentColor}
.form-status{font-family:var(--mono);font-size:11px;line-height:1.45;letter-spacing:.02em}
.form-status.error{color:var(--terra-deep)}
.form-status.success{color:var(--terra)}

image-slot{
  --is-bg: rgba(26,22,18,0.04);
  --is-border: rgba(26,22,18,0.18);
  --is-text: var(--ink-mute);
  --is-radius: 0px;
  background: rgba(26,22,18,0.035);
}

.label{
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--terra);
  font-weight:500;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.label::before{
  content:"";
  width:24px; height:1px;
  background:var(--terra);
  display:inline-block;
}
.reveal{opacity:0;transform:translateY(24px);transition:opacity 1.1s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

.wrap{max-width:1440px;margin:0 auto;padding:0 56px;width:auto}
.section{padding: 140px 0;}

/* page top spacing for non-home pages */
.page-top{padding-top: 180px}

@media (max-width: 900px){
  body{font-size:16px}
  .wrap{padding:0 28px}
  .page-top .wrap,
  .page-top .wrap > *,
  .phero-grid,
  .phero-grid > *{
    min-width:0;
    max-width:100%;
  }
  .page-top p{
    max-width:100% !important;
    overflow-wrap:anywhere;
  }
  .section{padding:88px 0}
  .page-top{padding-top: 130px}
}
@media (prefers-reduced-motion: reduce){
  .reveal{transition:none;opacity:1;transform:none}
  html{scroll-behavior:auto}
}
/* form a due colonne -> una sola su mobile */
@media (max-width: 600px){
  .jt-grid-form{grid-template-columns:1fr !important}
}
