@charset "UTF-8";
/*!
Theme Name: Atipiko Brands
Theme URI: https://atipikobrands.com/
Author: Atipiko Brands
Author URI: https://atipikobrands.com/
Description: Um tema inclusivo para Atipiko Brands, Lda.
Text Domain: Thema Wordpress com ACF
Version: 1
*/


:root{
  --bg:#ffffff;
  --text:#0e0e0e;
  --muted:#6b6b6b;
  --line:#ececec;
}

:root[data-theme="dark"]{
  --bg:#0e0e0e;
  --text:#f5f5f5;
  --muted:#aaaaaa;
  --line:#333333;
}


*{ box-sizing:border-box }
html,body{ height:100% }
body{
  margin:0;
  font-family:"Chivo", sans-serif;
  font-weight:300;
  background:var(--bg);
  color:var(--text);
  line-height:1.6;
  font-size:16px; /* base font */
}

.container{
  width:100%;
  max-width:var(--maxw);
  margin-inline:auto;
  padding-inline:24px;
}

.section{
  padding:72px 24px 28px;
  .rule{
    border:0; border-top:1px solid var(--line);
    margin:56px 0 0;
  }
}

.grid{
  display:grid;
  grid-template-columns:repeat(12, minmax(0, 1fr));
  gap:var(--gap);

  .section__title{
    grid-column:1 / 3;
    margin:0;
    font-size:16px;             /* todas as sections 16px */
    font-weight:300;
    font-family:"Anybody", sans-serif;
    color:var(--muted);
    letter-spacing:.06em;
    text-transform:uppercase;   /* maiúscula */
  }

  .section__content{
    grid-column:4 / 10;
  }
}

/* ===== HERO (primeira section) ===== */
.section--hero{
  min-height:90dvh;
  display:flex;
  align-items:center; /* centraliza grid verticalmente */
}

.section--hero .grid{
  align-items:start; /* por padrão, todos alinhados ao topo */
}

.section--hero .section__content{
  display:flex;
  flex-direction:column;
  justify-content:center; /* este sim fica centrado verticalmente */
}
/* Conteúdo */
.section__content{
  .page-title{
    font-size:30px;  /* nome */
    font-weight:300;
    font-family:"Anybody", sans-serif;
    margin:0 0 6px;
  }
  .subtitle{
    font-size:17px;  /* título de função */
    margin:0 0 14px;
    color:var(--muted);
    font-weight:300;
    font-family:"Chivo", sans-serif;
  }
  p{ margin:0 0 12px; font-size:16px }
  .tags{
    display:flex; flex-wrap:wrap; gap:10px; margin-top:10px; padding:0;
    list-style:none;
    li{ font-size:16px; color:var(--muted) }
  }
}

/* Projetos */
.projects{ display:grid; gap:28px }
.project{
  /* border:1px solid var(--line); */
  overflow:hidden;

  .project__media{
    aspect-ratio:16/9; width:100%; object-fit:cover; display:block; background:#f4f4f4;
  }
  .project__meta{
    padding:16px 0;
    display:flex; justify-content:space-between; gap:12px;
    font-size:16px; color:var(--muted);

    @media (max-width:479.98px){
      flex-direction:column; align-items:flex-start; gap:6px;
    }

    .project__link{
      color:var(--muted);
      text-decoration:underline;
      transition:color .2s;
      &:hover{ color:var(--text); }
    }
  }
}

/* Links de contacto */
.contact-links{
  display:flex; gap:18px; flex-wrap:wrap; margin-top:8px;
  a{
    text-decoration:none; color:var(--text);
    /* border:1px solid var(--line); padding:8px 12px; border-radius:999px; */
    font-size:16px;
    font-family:"Chivo", sans-serif;
  }
}

.footer{
  padding:48px 0;
  color:var(--muted);
  font-size:16px;
  font-family:"Chivo", sans-serif;
}

/* Responsivo */
@media (max-width:1199.98px){
  .grid{
    grid-template-columns:repeat(6, minmax(0, 1fr));
    .section__title{ grid-column:1 / 3; }
    .section__content{ grid-column:2 / 7; }
  }
}

@media (max-width:767.98px){
  .grid{
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:16px;
    .section__title{ grid-column:1 / -1; margin-bottom:8px; }
    .section__content{ grid-column:1 / -1; }
  }
  .projects{ gap:18px }
}


.grid{
  display:grid;
  grid-template-columns:repeat(12, minmax(0, 1fr));
  gap:var(--gap);

  .section__title{
    grid-column:1 / 3;
    margin:0;
    font-size:16px;
    font-weight:300;
    font-family:"Anybody", sans-serif;
    color:var(--muted);
    letter-spacing:.06em;
    text-transform:uppercase;
  }

  .section__content{
    grid-column:4 / 10; /* padrão */
  }
}

/* Conteúdo do CONTACTO em linha */
.section--contact .section__content{
  display:flex;
  align-items:center;        /* mesma linha, centrados verticalmente */
  justify-content:space-between;
  gap:24px;
}

.section--contact .contact-links{
  display:flex; gap:18px; flex-wrap:wrap; margin:0;
}

.section--contact .contact-copy{
  display:inline-block;
  white-space:nowrap;        /* evita quebrar o © */
  color:var(--muted);
  font-size:16px;
}

/* Responsivo: empilha links e copyright abaixo do título */
@media (max-width:1199.98px){
  .section--contact .section__content{
    flex-direction:column;
    align-items:flex-start;  /* alinha à esquerda quando empilhar */
    gap:12px;
  }
}


/* ===== Ajuste para PROJECTS e CONTACTO no desktop ===== */
@media (min-width:1200px){
  .section--projects .section__content,
  .section--contact .section__content{
    grid-column:4 / 11;
  }
}


/* ===== Mobile & Tablet: título em cima e hero sem centragem vertical ===== */
@media (max-width:1199.98px){
  /* Cancela o flex do hero no desktop para não centrar verticalmente */
  .section--hero{
    min-height:auto;
    display:block;              /* em vez de display:flex */
  }
  .section--hero .grid{
    align-items:start;          /* garante título no topo */
  }
  .section--hero .section__content{
    justify-content:flex-start; /* conteúdo começa no topo */
  }

  /* Já tens estas colunas, mantemos para tablet */
  .grid{
    grid-template-columns:repeat(6, minmax(0, 1fr));
  }
}

@media (max-width:767.98px){
  /* Mobile: título ocupa a largura toda e vem antes do conteúdo */
  .grid{
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:16px;
  }
  .grid .section__title{ grid-column:1 / -1; margin-bottom:8px; }
  .grid .section__content{ grid-column:1 / -1; }
}
