/* =========================================================
   Maria Eduarda Koerich — Home
   Todas as classes usam o prefixo .mek para não colidir com o tema.
   ========================================================= */
:root{
  --mek-brown:#664943;
  --mek-brown-2:#6b4a44;
  --mek-rose:#e5bdb5;
  --mek-rose-2:#ebc9c2;
  --mek-off:#f6f6f6;
  --mek-white:#fff;
  --mek-serif:"EB Garamond", "Cormorant Garamond", Georgia, serif;
  --mek-sans:"Lexend", "Helvetica Neue", Arial, sans-serif;
  --mek-pad:clamp(20px, 6.6vw, 96px);
  --mek-max:1440px;
}

:where(.mek) *, :where(.mek) *::before, :where(.mek) *::after{box-sizing:border-box}
body.mek{margin:0;background:var(--mek-off);color:var(--mek-brown);font-family:var(--mek-sans);font-weight:300;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}
:where(.mek) img{display:block;max-width:100%}
:where(.mek) a{color:inherit;text-decoration:none}
:where(.mek) p{margin:0}
:where(.mek) :is(h1,h2,h3,h4){margin:0;font-weight:400}
:where(.mek) button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
:where(.mek) svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

.mek-wrap{max-width:var(--mek-max);margin:0 auto;padding:0 var(--mek-pad)}

/* ---------- Tipografia ---------- */
.mek-h2{font-family:var(--mek-serif);font-size:clamp(32px,3.35vw,48px);line-height:1.12;letter-spacing:-.01em;color:var(--mek-brown)}
.mek-h2--bold{font-weight:600}
.mek-eyebrow{font-family:var(--mek-sans);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
.mek-eyebrow--serif{font-family:var(--mek-serif);text-transform:none;letter-spacing:0;font-size:20px}

/* ---------- Botões ---------- */
.mek-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 24px;font-family:var(--mek-serif);font-weight:600;font-size:18px;line-height:1;white-space:nowrap;transition:transform .2s, background-color .2s, color .2s}
.mek-btn:hover{transform:translateY(-1px)}
.mek-btn--dark{background:var(--mek-brown);color:var(--mek-white)}
.mek-btn--dark:hover{background:#523a35}
.mek-btn--light{background:var(--mek-white);color:#2a1f1d;font-family:var(--mek-sans);font-weight:400;font-size:16px;padding:13px 22px}
.mek-btn--sm{font-size:13px;padding:10px 22px}
.mek-link{font-family:var(--mek-serif);font-weight:600;font-size:18px;text-decoration:underline !important;text-underline-offset:3px}

/* Seta circular */
.mek-arrow{position:absolute;top:24px;right:24px;width:48px;height:48px;border-radius:50%;background:var(--mek-rose);transition:transform .25s}
.mek-arrow::before{content:"";position:absolute;inset:0;background:no-repeat center/18px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23664943' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M4 12L12 4M5 4h7v7'/%3E%3C/svg%3E")}
.mek-arrow--dark{background:var(--mek-brown)}
.mek-arrow--dark::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23e5bdb5' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M4 12L12 4M5 4h7v7'/%3E%3C/svg%3E")}
a:hover > .mek-arrow{transform:rotate(45deg)}

/* =================== HEADER =================== */
.mek-header{position:fixed;inset:0 0 auto 0;z-index:100;color:var(--mek-white);transition:background-color .3s, box-shadow .3s}
.mek-header.is-solid{background:rgba(102,73,67,.96);box-shadow:0 2px 20px rgba(0,0,0,.08)}
.mek-header__inner{max-width:var(--mek-max);margin:0 auto;padding:0 var(--mek-pad);height:96px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;transition:height .3s}
.mek-header.is-solid .mek-header__inner{height:72px}
.mek-nav{display:flex;align-items:center;gap:clamp(20px,4.2vw,60px);font-size:15px;font-weight:400}
.mek-nav--left{padding-left:clamp(0px,2.3vw,34px)}
.mek-nav--right{justify-content:flex-end;gap:clamp(16px,2.6vw,38px)}
.mek-nav a,.mek-drop__btn{opacity:.95}
.mek-nav > a:not(.mek-btn):hover,.mek-drop__btn:hover{opacity:1;text-decoration:underline;text-underline-offset:4px}
.mek-nav svg,.mek-lang svg{width:9px;height:6px;margin-left:4px;vertical-align:2px}
.mek-logo img{width:56px;height:auto}
.mek-lang{font-size:13px}

.mek-drop{position:relative}
.mek-drop__btn{display:inline-flex;align-items:center}
.mek-drop__menu{position:absolute;top:calc(100% + 14px);left:-16px;min-width:200px;background:var(--mek-white);color:var(--mek-brown);border-radius:12px;padding:8px;box-shadow:0 12px 32px rgba(60,40,36,.15);opacity:0;visibility:hidden;transform:translateY(-4px);transition:.2s}
.mek-drop__menu::before{content:"";position:absolute;inset:-14px 0 auto 0;height:14px}
.mek-drop__menu a{display:block;padding:9px 12px;border-radius:8px;font-size:14px}
.mek-drop__menu a:hover{background:var(--mek-off)}
.mek-drop:hover .mek-drop__menu,.mek-drop.is-open .mek-drop__menu{opacity:1;visibility:visible;transform:none}

.mek-burger{display:none;width:28px;height:20px;position:relative}
.mek-burger span{position:absolute;left:0;right:0;height:1.5px;background:currentColor;transition:.25s}
.mek-burger span:first-child{top:5px}.mek-burger span:last-child{bottom:5px}
.mek-burger[aria-expanded="true"] span:first-child{top:9px;transform:rotate(45deg)}
.mek-burger[aria-expanded="true"] span:last-child{bottom:9px;transform:rotate(-45deg)}
.mek-mobile{background:var(--mek-off);color:var(--mek-brown);padding:12px var(--mek-pad) 28px;display:flex;flex-direction:column}
.mek-mobile[hidden]{display:none}
.mek-mobile a{font-family:var(--mek-serif);font-size:24px;padding:10px 0;border-bottom:1px solid rgba(102,73,67,.15)}
.mek-mobile .mek-btn{margin-top:20px;border:0;font-size:18px;padding:14px}

/* =================== HERO =================== */
.mek-hero{position:relative;min-height:max(720px,100vh);max-height:1000px;overflow:hidden;color:var(--mek-white);display:flex;background:#5b4a44}
.mek-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 22%}
.mek-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(45,35,32,.62) 0%,rgba(45,35,32,.42) 45%,rgba(45,35,32,.2) 100%)}
.mek-hero__content{position:relative;width:100%;padding-top:clamp(140px,16vw,230px);padding-bottom:110px;display:flex;flex-direction:column}
.mek-hero__eyebrow{font-family:var(--mek-serif);font-size:20px;text-transform:uppercase;letter-spacing:.01em;margin-bottom:14px}
.mek-hero__title{font-family:var(--mek-serif);font-weight:600;font-size:clamp(44px,5.2vw,75px);line-height:1.12;letter-spacing:-.015em}
.mek-hero__sub{font-size:clamp(20px,1.95vw,28px);margin-top:6px}
.mek-hero__bottom{margin-top:auto;margin-left:auto;width:min(100%,710px);padding-top:60px}
.mek-hero__cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3.4vw,48px);font-size:15px;font-weight:300;margin-bottom:44px}
.mek-hero__down{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);color:var(--mek-white);animation:mek-bob 2.4s ease-in-out infinite}
.mek-hero__down svg{width:14px;height:8px}
@keyframes mek-bob{50%{transform:translate(-50%,6px)}}

/* =================== SOBRE =================== */
.mek-about{display:grid;grid-template-columns:1fr 1fr;max-width:var(--mek-max);margin:0 auto;min-height:880px}
.mek-about__text{padding:clamp(56px,8vw,118px) clamp(24px,4vw,60px) 80px var(--mek-pad);display:flex;flex-direction:column}
.mek-about__text .mek-h2{max-width:520px}
.mek-about__body{margin-top:44px;font-size:15px}
.mek-about__p1{max-width:250px}
.mek-about__p2{margin:32px 0 0 clamp(0px,12.5vw,180px);max-width:270px;display:flex;flex-direction:column;gap:16px}
.mek-about__p2 .mek-btn{align-self:flex-start;margin-top:40px}
.mek-about__media{position:relative;overflow:hidden}
.mek-about__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}

/* =================== GALERIA =================== */
.mek-gallery{padding:clamp(56px,6vw,90px) 0 clamp(90px,10vw,140px)}
.mek-gallery__grid{display:grid;grid-template-columns:minmax(0,625px) 1fr;gap:clamp(32px,5vw,72px);align-items:center}
.mek-gallery__cards{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px}
.mek-gcard{position:relative;display:block;overflow:hidden;aspect-ratio:301/316;background:#cbb}
.mek-gcard--wide{grid-column:1/-1;aspect-ratio:625/316}
.mek-gcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.mek-gcard::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(60,40,36,.55),rgba(60,40,36,.1) 55%)}
.mek-gcard:hover img{transform:scale(1.04)}
.mek-gcard .mek-arrow{z-index:2;width:48px;height:48px}
.mek-gcard__label{position:absolute;left:24px;bottom:24px;z-index:2;font-family:var(--mek-serif);font-weight:600;font-size:20px;line-height:1.2;text-transform:uppercase;color:var(--mek-rose)}
.mek-gallery__text{text-align:right;display:flex;flex-direction:column;align-items:flex-end}
.mek-gallery__text .mek-h2{max-width:520px;margin-bottom:40px}

/* =================== PROCEDIMENTOS =================== */
.mek-procs{background:var(--mek-rose);padding:clamp(64px,9vw,128px) 0 clamp(72px,10vw,144px)}
.mek-sechead{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:48px;flex-wrap:wrap}
.mek-sechead__side{display:flex;flex-direction:column;align-items:flex-end;gap:16px}
.mek-sechead__note{font-family:var(--mek-serif);font-size:20px}
.mek-sechead__actions{display:flex;align-items:center;gap:24px}
.mek-procs__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.mek-pcard{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:436px;padding:24px;border:1.5px solid var(--mek-brown);background:rgba(255,255,255,.04);transition:background-color .25s}
.mek-pcard:hover{background:var(--mek-rose-2)}
.mek-pcard h3{font-family:var(--mek-serif);font-weight:600;font-size:20px;margin-bottom:12px}
.mek-pcard p{font-size:14px;line-height:1.35;min-height:96px}

/* =================== DEPOIMENTOS =================== */
.mek-testi{padding:clamp(64px,8vw,104px) 0 clamp(90px,10vw,144px)}
.mek-testi .mek-sechead{margin-bottom:28px;align-items:center}
.mek-sechead__side--end{align-self:flex-end}
.mek-testi__grid{display:grid;grid-template-columns:406fr 269fr 271fr 269fr;grid-template-rows:auto auto;gap:12px}
.mek-tcard{margin:0;border:1.5px solid var(--mek-brown);padding:20px 24px 24px;display:flex;flex-direction:column;min-height:270px}
.mek-tcard--feature{grid-row:1/3;background:var(--mek-brown-2);color:var(--mek-white);border-color:var(--mek-brown-2)}
.mek-tcard--b{grid-column:2}
.mek-tcard--c{grid-column:3/5}
.mek-tcard--d{grid-column:2/4}
.mek-tcard--e{grid-column:4}
.mek-tcard__who{display:flex;align-items:center;gap:14px;font-family:var(--mek-serif)}
.mek-tcard__who img{width:48px;height:48px;object-fit:cover;filter:grayscale(1)}
.mek-tcard__who strong{display:block;font-weight:600;font-size:18px;line-height:1.1}
.mek-tcard__who em{font-style:normal;font-size:18px}
.mek-tcard blockquote{margin:24px 0 24px;font-size:14px;line-height:1.38;max-width:360px}
.mek-tcard__foot{margin-top:auto;font-family:var(--mek-serif)}
.mek-tcard__foot strong{display:block;font-size:20px;font-weight:600;line-height:1.2}
.mek-stars{font-size:22px;font-weight:600}
.mek-stars i{font-style:normal;letter-spacing:.06em;font-size:24px;margin-left:4px}

/* =================== FAQ =================== */
.mek-faq{background:var(--mek-rose);padding:clamp(64px,7vw,96px) 0 clamp(64px,7vw,96px)}
.mek-faq__grid{display:grid;grid-template-columns:1fr minmax(0,540px);gap:clamp(32px,6vw,90px);padding-left:clamp(20px,9.3vw,150px);padding-right:clamp(20px,7.3vw,150px)}
.mek-faq .mek-h2{font-size:clamp(36px,3.4vw,49px)}
.mek-faq__lead{font-size:15px;margin-top:16px;max-width:470px}
.mek-faq__label{font-family:var(--mek-serif);font-weight:600;font-size:20px;margin:36px 0 18px}
.mek-faq__topics{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding-left:48px}
.mek-faq__topics button{font-family:var(--mek-serif);font-size:20px;padding:2px 0 2px 8px;margin-left:-8px;border-left:1.5px solid transparent;transition:.2s}
.mek-faq__topics button[aria-selected="true"]{font-weight:600;border-left-color:var(--mek-brown)}
.mek-faq__topics button:hover{opacity:.75}
.mek-faq__panels > div{display:flex;flex-direction:column;gap:24px}
.mek-faq__panels > div[hidden]{display:none}
.mek-faq details{border:1.5px solid rgba(102,73,67,.35);transition:border-color .2s}
.mek-faq details[open]{border-color:rgba(102,73,67,.55)}
.mek-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 22px;font-family:var(--mek-serif);font-weight:600;font-size:20px}
.mek-faq summary::-webkit-details-marker{display:none}
.mek-faq summary::after{content:"";flex:0 0 14px;height:14px;background:linear-gradient(currentColor,currentColor) center/14px 1.5px no-repeat,linear-gradient(currentColor,currentColor) center/1.5px 14px no-repeat;transition:transform .25s}
.mek-faq details[open] summary::after{background:linear-gradient(currentColor,currentColor) center/14px 1.5px no-repeat}
.mek-faq details p{padding:0 22px 26px;font-size:15px;margin-top:-6px}

/* =================== FOOTER =================== */
.mek-footer{background:var(--mek-off);padding:120px 0 64px;font-size:15px}
.mek-footer__top{display:flex;justify-content:space-between;gap:48px;flex-wrap:wrap}
.mek-footer__brand img{width:130px;height:auto}
.mek-social{display:flex;gap:13px;margin-top:22px}
.mek-social a{width:36px;height:36px;border:1.2px solid var(--mek-rose);border-radius:50%;display:grid;place-items:center;color:var(--mek-rose);transition:.2s}
.mek-social a:hover{background:var(--mek-rose);color:var(--mek-white)}
.mek-social svg{width:15px;height:15px}
.mek-footer__cols{display:grid;grid-template-columns:repeat(3,minmax(140px,234px))}
.mek-footer__cols h4{font-family:var(--mek-serif);font-weight:600;font-size:20px;margin-bottom:14px}
.mek-footer__cols a{display:block;margin-bottom:9px;font-weight:300}
.mek-footer__cols a:hover{color:#c98f84}
.mek-footer__contact{display:flex;justify-content:flex-end;gap:38px;margin-top:84px;padding-bottom:22px;border-bottom:1.2px solid var(--mek-brown)}
.mek-footer__contact a{display:inline-flex;align-items:center;gap:8px}
.mek-footer__contact svg{width:16px;height:16px}
.mek-footer__bottom{display:flex;justify-content:space-between;gap:20px;padding-top:22px;flex-wrap:wrap}
.mek-footer__bottom div{display:flex;gap:40px}

/* =================== RESPONSIVO =================== */
@media (max-width:1100px){
  .mek-procs__grid{grid-template-columns:repeat(2,1fr)}
  .mek-pcard{min-height:320px}
  .mek-testi__grid{grid-template-columns:1fr 1fr}
  .mek-tcard--feature{grid-row:auto;grid-column:1/-1}
  .mek-tcard--b,.mek-tcard--c,.mek-tcard--d,.mek-tcard--e{grid-column:auto}
  .mek-gallery__grid{grid-template-columns:1fr}
  .mek-gallery__text{order:-1;align-items:flex-start;text-align:left}
}
@media (max-width:900px){
  .mek-nav{display:none}
  .mek-burger{display:block}
  .mek-header__inner{grid-template-columns:1fr auto 1fr;height:72px}
  .mek-header.has-menu{background:var(--mek-off);color:var(--mek-brown)}
  .mek-header.has-menu .mek-logo img{filter:brightness(0) saturate(100%) invert(80%) sepia(13%) saturate(600%) hue-rotate(320deg)}
  .mek-hero__bottom{margin-left:0}
  .mek-about{grid-template-columns:1fr;min-height:0}
  .mek-about__media{aspect-ratio:4/5}
  .mek-about__p1,.mek-about__p2{max-width:480px}
  .mek-about__p2{margin-left:0}
  .mek-faq__grid{grid-template-columns:1fr;padding-left:var(--mek-pad);padding-right:var(--mek-pad)}
  .mek-faq__topics{flex-direction:row;flex-wrap:wrap;padding-left:0;gap:10px 22px}
  .mek-footer__contact{justify-content:flex-start;flex-wrap:wrap}
}
@media (max-width:600px){
  .mek-hero__title br{display:none}
  body.mek{font-size:14px}
  .mek-hero__cols{grid-template-columns:1fr;gap:12px;margin-bottom:28px}
  .mek-hero__eyebrow{font-size:16px}
  .mek-sechead{flex-direction:column;align-items:flex-start}
  .mek-sechead__side{align-items:flex-start}
  .mek-sechead__actions{flex-wrap:wrap}
  .mek-procs__grid,.mek-testi__grid{grid-template-columns:1fr}
  .mek-pcard{min-height:260px}
  .mek-gallery__cards{gap:12px}
  .mek-gcard__label{font-size:16px;left:16px;bottom:16px}
  .mek-gcard .mek-arrow{width:38px;height:38px;top:14px;right:14px}
  .mek-footer__cols{grid-template-columns:1fr 1fr;gap:24px;width:100%}
  .mek-footer{padding-top:72px}
}
@media (prefers-reduced-motion:reduce){.mek *{transition:none !important;animation:none !important}}

/* Páginas internas (index.php) */
.mek-page{padding:160px 0 96px;min-height:60vh}
.mek-page__content{margin-top:32px;max-width:760px;font-size:16px;line-height:1.6}
.mek-page__content p{margin:0 0 1em}
body.mek:not(.home) .mek-header{background:rgba(102,73,67,.96)}
