/* =========================================================
   GLOBAL RESETS
   ========================================================= */

body {
  margin: 0 auto;           /* center the page */
  padding: 0;
  box-sizing: border-box;
  font-size: 100%;
  max-width: 1600px;        /* cap width */
  width: 100%;              /* let it shrink below 1600px */
  overflow-x: hidden;       /* optional; remove while debugging */
}

/* =========================================================
   LOGO (crisp, responsive, no squashing)
   ========================================================= */
.custom-logo,
.site-logo img,
.header-brand img,
#site-logo img,
.wp-site-logo img,
.wp-block-site-logo img {
  /*height: auto !important;        /* never stretch vertically */
  /*max-height: 60px;               /* desktop default */
 /* width: auto !important;         /* never stretch horizontally */
 /* max-width: 100%;
  object-fit: contain;            /* keep aspect ratio inside its box */
  /*aspect-ratio: auto;*/
  display: block;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  flex: 0 0 auto;                 /* prevent flex parents from distorting */
}

/* =========================================================
   NAV: spacing between links
   ========================================================= */
.wp-block-navigation ul {
  display: flex;
  gap: 24px; /* adjust spacing between links */
  align-items: center;
  flex-wrap: wrap
}
.wp-block-navigation ul li a {
  text-decoration: none;
  font-weight: 500;
}
.wp-block-navigation a {
  /*border: 1px solid currentColor;
  padding: 6px 12px;
  border-radius: 4px;
  text-decoration: none;*/
}

.wp-block-navigation a:hover {
  background: gray;
}
/* =========================================================
   HEADER
   ========================================================= */
.site-header {
  margin-bottom: 0; /* removes unnecessary gap under logo */
}

/* Optional mobile header tweaks (kept as-is) */
@media (max-width: 768px) {
  .header-bar .wp-block-social-links { bottom: -10px; left: 10px; }
  .header-bar .wp-block-buttons { bottom: -10px; right: 10px; }
  .wp-block-group.header-row {
    margin-bottom: 6px !important;
    padding: 5 10px;
  }
  /*.wp-block-group.header-row .wp-block-image img { max-height: 72px; }*/
}

/* =========================================================
   DISPLAY GRID (yellow section)
   (merged duplicates; later values preserved)
   ========================================================= */
.display-grid-wrapper {
  /*padding: 12px 8px !important;     /* less padding */
  margin: 0 auto 2px !important;   /* small bottom space */
  /*max-width: 1200px;*/
  /* background: #e6d36f; */
}
.display-grid-wrapper img {
  border-radius: 6px;  /* unified (was 8px earlier) */
  display: block;
  width: 100%;
  height: auto;
}

/* =========================================================
   ORÇAMENTO FORM (scoped — won't affect other forms)
   ========================================================= */
.orcamento-wrapper {
  max-width: 600px;
  margin: 32px auto;
  padding: 24px;
  background: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 12px;
  box-shadow: 0 6px 24px rgba(0,0,0,0.06);
}
.orcamento-wrapper * { box-sizing: border-box; }

/* Headings / text inside the box */
.orcamento-wrapper h1,
.orcamento-wrapper h2,
.orcamento-wrapper h3,
.orcamento-wrapper p {
  margin: 0 0 12px;
  line-height: 1.4;
}

/* Layout spacing between fields */
.orcamento-wrapper .form-row,
.orcamento-wrapper .wp-block-group,
.orcamento-wrapper .wp-block-columns,
.orcamento-wrapper .wp-block-column {
  margin-bottom: 14px;
}

/* Inputs, selects, textareas */
.orcamento-wrapper input[type="text"],
.orcamento-wrapper input[type="email"],
.orcamento-wrapper input[type="tel"],
.orcamento-wrapper input[type="number"],
.orcamento-wrapper input[type="date"],
.orcamento-wrapper select,
.orcamento-wrapper textarea {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #d6d6d6;
  border-radius: 8px;
  background: #fff;
  font-size: 16px;
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.orcamento-wrapper textarea {
  min-height: 120px;
  resize: vertical;
}
.orcamento-wrapper input:focus,
.orcamento-wrapper select:focus,
.orcamento-wrapper textarea:focus {
  border-color: #000;
  box-shadow: 0 0 0 3px rgba(0,0,0,0.08);
}

/* Labels */
.orcamento-wrapper label {
  display: block;
  margin-bottom: 6px;
  font-weight: 600;
  font-size: 14px;
}

/* Consent row — tighter spacing above the submit button */
.orcamento-wrapper .form-row.consent-row { 
  margin-bottom: 8px !important;  /* override generic 14px */
}
.orcamento-wrapper .form-row.consent-row label {
  display: flex; 
  align-items: center; 
  gap: 8px; 
  margin-bottom: 0 !important;    /* remove base label margin */
}
.orcamento-wrapper .form-row.consent-row .description { 
  margin-top: 4px; 
  line-height: 1.3; 
}

/* Helper text / errors */
.orcamento-wrapper .help,
.orcamento-wrapper .description {
  font-size: 13px;
  color: #666;
  margin-top: 6px;
}
.orcamento-wrapper .error,
.orcamento-wrapper .error-message {
  color: #c0392b;
  font-size: 14px;
  margin-top: 6px;
}

/* Submit button */
.orcamento-wrapper button,
.orcamento-wrapper input[type="submit"],
.orcamento-wrapper .wp-block-button__link {
  display: inline-block;
  width: 100%;
  text-align: center;
  padding: 12px 18px;
  border-radius: 10px;
  border: 2px solid #000;
  background: #000;
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  cursor: pointer;
  transition: transform .08s ease, background .2s ease, color .2s ease;
}
.orcamento-wrapper button:hover,
.orcamento-wrapper input[type="submit"]:hover,
.orcamento-wrapper .wp-block-button__link:hover {
  background: #111;
}
.orcamento-wrapper button:active,
.orcamento-wrapper input[type="submit"]:active,
.orcamento-wrapper .wp-block-button__link:active {
  transform: translateY(1px);
}
/* ensure no extra space above the button */
.orcamento-wrapper #orcamentoSubmit { 
  margin-top: 0 !important; 
}

/* Compact spacing for checkbox/radio inputs */
.orcamento-wrapper input[type="checkbox"],
.orcamento-wrapper input[type="radio"] {
  width: auto;
  margin-right: 8px;
}

/* Small “success” message style */
.orcamento-wrapper .success-message {
  color: #1a7f37;
  background: #eaf7ee;
  border: 1px solid #ccebd7;
  padding: 10px 12px;
  border-radius: 8px;
  margin-top: 12px;
}

/* Mobile tweaks */
@media (max-width: 600px) {
  .orcamento-wrapper {
    margin: 20px auto;
    padding: 18px;
    border-radius: 10px;
  }
  .orcamento-wrapper button,
  .orcamento-wrapper input[type="submit"],
  .orcamento-wrapper .wp-block-button__link {
    font-size: 15px;
    padding: 12px 16px;
  }
}
/* ===== FIX 1: remove the mobile height cap that shortens the logo ===== */
@media (max-width: 768px) {
  .wp-block-group.header-row .wp-block-image img {
    max-height: none !important;   /* stop shrinking the height */
    height: 160px;   /* keep natural ratio */
  }
}

/* ===== FIX 2: let the Image block wrapper expand on mobile =====
   (Gutenberg often sets an inline width, e.g., width:176px) */
@media (max-width: 768px) {
  .wp-block-group.header-row .wp-block-image,
  .wp-block-group.header-row .wp-block-image.is-resized,
  .wp-block-group.header-row .wp-block-image[style*="width"] {
    width: auto !important;
    max-width: 100% !important;
  }
}

/* ===== FIX 3: size the actual logo by width; height follows naturally ===== */
@media (max-width: 768px) {
  .wp-block-group.header-row .wp-block-image img,
  .wp-block-site-logo img,
  .site-logo img,
  .wp-site-logo img,
  .wp-block-site-logo img {
    width: clamp(200px, 55vw, 320px) !important;  /* responsive width */
    height: auto !important;
    max-height: none !important;
    object-fit: contain;
    display: block;
  }
}

/* (Optional) guard: make sure any logo container isn’t clipping the image */
.wp-block-site-logo,
.site-logo {
  line-height: 1;
  height: auto !important;
  overflow: visible !important;
}


/* CSS - PAGINA SOBRE NOS */
/* load this LATE in your CSS stack */
.wp-site-blocks .wp-block-post-content .about-section{
  max-width: 1600px !important;  /**********************NAO ESTA ALTERANDO NADA ESSA LINHA ***********************************/
  margin: 0 auto;
  padding: 20px 20px 20px 20px; /* left padding respected */
  font-family: Arial, sans-serif;
  color: #333;
  line-height: 1.6;
}

.wp-site-blocks .wp-block-post-content .about-section h2{
  text-align: center;
  font-weight: 700;
  color: #2c3e50;
  font-size: 2rem;
  margin-bottom: 1em;
}

.wp-site-blocks .wp-block-post-content .about-section h3{
  font-weight:700;
  margin:1.2em 0 .6em;
}

.wp-site-blocks .wp-block-post-content .about-section p{
  margin:0 0 1em 0;
  font-size:1.1rem;
  padding:5px 0;
}

/* Mobile */
@media (max-width:768px){
  .wp-site-blocks .wp-block-post-content .about-section{
    padding:15px 10px 15px 20px !important; /* preserve larger left */
    max-width:100%;
  }
  .wp-site-blocks .wp-block-post-content .about-section h2{font-size:1.4rem;margin-bottom:.75em}
  .wp-site-blocks .wp-block-post-content .about-section p{font-size:1rem}
}

//* Orçamento: tighten checkbox block and remove stray gaps */
.orcamento-wrapper .form-row.consent-row {
  margin-bottom: 8px !important;        /* override generic 14px */
}
.orcamento-wrapper .form-row.consent-row label {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 0 !important;          /* kill default label margin */
}
.orcamento-wrapper .form-row.consent-row .description {
  margin-top: 4px;
  line-height: 1.3;
}

/* Ensure the submit button sits tight */
.orcamento-wrapper #orcamentoSubmit {
  margin-top: 0 !important;
}

/* Kill editor-injected <p>/<br> spacing inside this form only */
.orcamento-wrapper form p { 
  margin: 0 !important; 
  padding: 0 !important; 
  line-height: 0 !important; 
}
.orcamento-wrapper form br { 
  display: none !important; 
}

@media (min-width: 768px) {
  :where(.is-layout-constrained) > :where(:not(.alignfull)) {
    max-width: 1200px !important;   /* pick your width */
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .alignwide {                      /* keep Wide wider than content */
    max-width: 1400px !important;
  }
}
:root {
  --wp--style--global--content-size: 1200px !important;
  --wp--style--global--wide-size: 1400px !important;
}