/* Tailwind-lite: minimal set of utilities used in your HTML
   Generated to replicate the Tailwind utilities your template uses,
   including hover: and focus: variants and md: responsive variants.

   USAGE:
   - Save this file as e.g. static/css/tailwind-local.css and
     replace the CDN <script src="https://cdn.tailwindcss.com"></script>
     with <link rel="stylesheet" href="/static/css/tailwind-local.css"> (ajuste o path conforme seu projeto).
   - Mantive as cores e fontes que você definiu no tailwind.config (primary, secondary, accent).

   NOTE: This is a focused, small utility set (not the full Tailwind distribution).
*/

:root{
  --color-primary: #06402B;
  --color-secondary: #4b7744; /* trimmed from 8-digit hex */
  --color-accent: #a8d167;
  --color-black: #121212;
  --green-50: #ecfdf5;
  --gray-50: #f9fafb;
  --gray-100: #f3f4f6;
  --gray-200: #e5e7eb;
  --gray-300: #d1d5db;
  --gray-600: #4b5563;
  --gray-700: #374151;
  --gray-800: #1f2937;
}

/* Basic resets used in your page */
html,body{height:100%;margin:0;overflow-x:hidden;scroll-behavior:smooth;font-family:Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial}

/* Layout */
.container{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}
.mx-auto{margin-left:auto;margin-right:auto}
.flex{display:flex}
.inline-block{display:inline-block}
.block{display:block}
.hidden{display:none}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.flex-col{flex-direction:column}
.flex-wrap{flex-wrap:wrap}
.gap-4{gap:1rem}
.gap-6{gap:1.5rem}
.space-x-3 > * + *{margin-left:0.75rem}
.space-x-4 > * + *{margin-left:1rem}
.space-x-6 > * + *{margin-left:1.5rem}
.space-y-4 > * + *{margin-top:1rem}

.w-full{width:100%}
.max-w-sm{max-width:24rem}
.max-w-3xl{max-width:48rem}
.max-w-4xl{max-width:56rem}
.max-w-7xl{max-width:80rem}
.w-2\/3{width:66.666667%}
.w-24{width:6rem}
.h-64{height:16rem}
.h-full{height:100%}
.h-16{height:4rem}
.h-1{height:0.25rem}

.p-3{padding:0.75rem}
.p-4{padding:1rem}
.p-6{padding:1.5rem}
.p-8{padding:2rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.py-2{padding-top:0.5rem;padding-bottom:0.5rem}
.py-6{padding-top:1.5rem;padding-bottom:1.5rem}
.pt-2{padding-top:0.5rem}
.pb-1{padding-bottom:0.25rem}
.mt-1{margin-top:0.25rem}
.mt-2{margin-top:0.5rem}
.mt-4{margin-top:1rem}
.mt-6{margin-top:1.5rem}
.mb-4{margin-bottom:1rem}
.mb-6{margin-bottom:1.5rem}
.mb-8{margin-bottom:2rem}
.mt-8{margin-top:2rem}
.mb-10{margin-bottom:2.5rem}
.mt-12{margin-top:3rem}

.rounded{border-radius:0.25rem}
.rounded-md{border-radius:0.375rem}
.rounded-lg{border-radius:0.5rem}
.rounded-xl{border-radius:0.75rem}
.rounded-full{border-radius:9999px}

.border{border-width:1px;border-style:solid;border-color:var(--gray-200)}
.border-t{border-top-width:1px}
.border-b{border-bottom-width:1px}
.border-gray-200{border-color:var(--gray-200)}
.border-secondary{border-color:var(--color-secondary)}
.border-secondary\/50{border-color:rgba(75,119,68,0.5)}
.border-accent{border-color:var(--color-accent)}
.border-accent\/50{border-color:rgba(168,209,103,0.5)}

.shadow{box-shadow:0 1px 3px rgba(0,0,0,0.06)}
.shadow-md{box-shadow:0 4px 6px rgba(0,0,0,0.08)}
.shadow-lg{box-shadow:0 10px 15px rgba(0,0,0,0.1)}
.shadow-xl{box-shadow:0 20px 25px rgba(0,0,0,0.12)}

.transition{transition-property:all;transition-duration:150ms;transition-timing-function:cubic-bezier(.4,0,.2,1)}
.transition-colors{transition-property:color,background-color,border-color,box-shadow,opacity}
.transition-all{transition-property:all}
.duration-150{transition-duration:150ms}
.duration-200{transition-duration:200ms}
.duration-300{transition-duration:300ms}
.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}
.transform{transform:translateZ(0)}
.scale-110{transform:scale(1.10)}

/* Typography */
.text-2xl{font-size:1.5rem;line-height:1.25}
.text-3xl{font-size:1.875rem;line-height:1.2}
.text-4xl{font-size:2.25rem}
.text-5xl{font-size:3rem}
.text-7xl{font-size:4.5rem}
.text-lg{font-size:1.125rem}
.text-base{font-size:1rem}
.text-sm{font-size:0.875rem}
.font-bold{font-weight:700}
.font-medium{font-weight:600}
.font-extrabold{font-weight:800}
.font-serif{font-family:Archivo, Georgia, 'Times New Roman', serif}
.font-sans{font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto}
.text-center{text-align:center}
.text-start{text-align:left}
.leading-tight{line-height:1.25}

/* Colors */
.text-primary{color:var(--color-primary)}
.text-secondary{color:var(--color-secondary)}
.text-accent{color:var(--color-accent)}
.text-black{color:var(--color-black)}
.text-gray-600{color:var(--gray-600)}
.text-gray-700{color:var(--gray-700)}
.text-gray-800{color:var(--gray-800)}

.bg-white{background-color:#ffffff}
.bg-white\/50{background-color:rgba(255,255,255,0.5)}
.bg-accent{background-color:var(--color-accent)}
.bg-accent\/10{background-color:rgba(168,209,103,0.1)}
.bg-accent\/30{background-color:rgba(168,209,103,0.3)}
.bg-green-50{background-color:var(--green-50)}

/* Borders and outline utilities */
.border-b-2{border-bottom-width:2px}
.pb-1{padding-bottom:0.25rem}

/* Buttons / links */
.rounded.border{border-radius:0.375rem}
.text-white{color:#fff}

/* Hover / Focus variants (escape colon for CSS selectors) */
.hover\:text-primary:hover{color:var(--color-primary)}
.hover\:text-accent:hover{color:var(--color-accent)}
.hover\:text-white:hover{color:#fff}
.hover\:bg-secondary:hover{background-color:var(--color-secondary)}
.hover\:bg-accent:hover{background-color:var(--color-accent)}
.hover\:bg-green-500:hover{background-color:#10b981}
.hover\:border-secondary:hover{border-color:var(--color-secondary)}
.hover\:scale-110:hover{transform:scale(1.10)}

/* focus variants */
.focus\:outline-none:focus{outline:0}
.focus\:ring-2:focus{box-shadow:0 0 0 4px rgba(16,185,129,0.15)} /* generic ring fallback */
.focus\:ring-green-500:focus{box-shadow:0 0 0 4px rgba(16,185,129,0.15)}
.focus\:ring-gray-500:focus{box-shadow:0 0 0 4px rgba(107,114,128,0.15)}
.focus\:ring-offset-2:focus{outline-offset:2px}

/* Specific classes used on your form inputs (keeps behaviour you had) */
.form-input{border:1px solid var(--gray-200);border-radius:0.375rem;padding:0.5rem 1rem;width:100%;box-shadow:0 1px 2px rgba(0,0,0,0.05);background:#fff}
.form-input:focus{outline: none;box-shadow:0 0 0 4px rgba(16,185,129,0.15);border-color: #10B981}

/* Nav, sticky, z-index, positioning */
.sticky{position:sticky}
.top-0{top:0}
.left-0{left:0}
.right-0{right:0}
.bottom-0{bottom:0}
.absolute{position:absolute}
.fixed{position:fixed}
.z-40{z-index:40}
.z-50{z-index:50}
.backdrop-blur-md{backdrop-filter: blur(6px)}

/* Hamburger icon helpers (to keep your JS toggles working) */
.hamburger{cursor:pointer;width:24px;height:24px;transition:all .25s;position:relative}
.hamburger-top,.hamburger-middle,.hamburger-bottom{position:absolute;left:0;width:24px;height:2px;background:#000;transition:all .5s}
.hamburger-middle{transform:translateY(7px)}
.hamburger-bottom{transform:translateY(14px)}
.open .hamburger-top{transform:rotate(45deg) translateY(6px) translateX(6px)}
.open .hamburger-middle{display:none}
.open .hamburger-bottom{transform:rotate(-45deg) translateY(6px) translateX(-6px)}

/* Utility for ring offsets used on buttons */
.focus\:ring-offset-2:focus{box-shadow:0 0 0 6px rgba(0,0,0,0)}

/* Utility for transitions on icons/links */
.transform{transition:transform 200ms}
.hover\:scale-110:hover{transform:scale(1.10)}

/* Responsive - md breakpoint (min-width: 768px) */
@media (min-width:768px){
  .md\:flex{display:flex}
  .md\:hidden{display:none}
  .md\:w-1\/2{width:50%}
  .md\:p-6{padding:1.5rem}
  .md\:p-12{padding:3rem}
  .md\:px-12{padding-left:3rem;padding-right:3rem}
  .md\:h-\[700px\]{height:700px}
  .md\:mb-0{margin-bottom:0}
  .md\:text-5xl{font-size:3rem}
  .md\:text-4xl{font-size:2.25rem}
  .md\:items-start{align-items:flex-start}
  .md\:justify-center{justify-content:center}
}

/* Simple utilities used for svg icons and spacing */
.flex-shrink-0{flex-shrink:0}
.w-4{width:1rem}
.h-4{height:1rem}
.w-3\/4{width:75%}

/* Accessibility helpers */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Small helpers for text decoration used in header */
.block.w-24{width:6rem}

/* Ensure links keep default cursor */
a{cursor:pointer}

/* Footer small text */
.text-xs{font-size:0.75rem}

/* End of utilities */
