/*
Theme Name: Tamiris Prisma
Theme URI: http://localhost:10022
Author: Gutenberg Rubens
Author URI: http://localhost:10022
Description: Tema leve e mobile-first da marca Tamiris Ferreira (Nail Designer + Método Prisma). Block theme com identidade verde sálvia, dourado e bege — sem dependência de page builders.
Version: 3.3.2
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 8.0
License: Proprietary
Text Domain: tamiris-prisma
*/

/* A maior parte do visual vem do theme.json (cores, fontes, espaços).
   Este arquivo traz utilitários, componentes da marca e a Área da Aluna. */

/* Spinner de carregamento (reuso futuro) */
.tamiris-spinner{
  width:36px;height:36px;border-radius:50%;
  border:3px solid var(--wp--preset--color--linha,#E4D8C6);
  border-top-color:var(--wp--preset--color--dourado,#B89A6A);
  animation:tamiris-spin .8s linear infinite;margin:auto;
}
@keyframes tamiris-spin{to{transform:rotate(360deg)}}

/* Botão "fantasma" (secundário) da marca */
.is-style-tamiris-outline{
  background:transparent !important;
  color:var(--wp--preset--color--verde-escuro) !important;
  box-shadow:inset 0 0 0 1.5px var(--wp--preset--color--verde);
}
.is-style-tamiris-outline:hover{
  background:var(--wp--preset--color--verde) !important;
  color:#fff !important;
}

/* Linha dourada decorativa */
.tamiris-rule{height:2px;width:88px;background:var(--wp--preset--color--dourado);border:0;margin:1rem 0;}

/* Botão flutuante de WhatsApp */
.tamiris-wa{position:fixed;right:18px;bottom:18px;z-index:9999;display:inline-flex;align-items:center;gap:.5rem;background:#25D366;color:#fff;padding:.7rem 1rem;border-radius:50px;box-shadow:0 8px 25px rgba(0,0,0,.18);text-decoration:none;font-family:var(--wp--preset--font-family--corpo);font-weight:600;font-size:.95rem;transition:transform .15s ease;}
.tamiris-wa:hover{transform:translateY(-2px);color:#fff;}
.tamiris-wa svg{flex:0 0 auto;}
@media (max-width:600px){
  .tamiris-wa{padding:.8rem;bottom:14px;right:14px;}
  .tamiris-wa__txt{display:none;} /* só o ícone no celular */
}
@supports(padding:env(safe-area-inset-bottom)){ .tamiris-wa{bottom:calc(14px + env(safe-area-inset-bottom));} }

/* Formulários do RCP (cadastro/assinatura) na identidade Tamiris */
#rcp_registration_form,#rcp_login_form,.rcp_form,#rcp_subscription_levels{max-width:480px;margin:1.5rem auto;background:var(--wp--preset--color--off-white,#F3EFE6)!important;border:1px solid var(--wp--preset--color--linha,#E4D8C6);border-radius:18px;padding:2rem 1.75rem;box-shadow:0 8px 25px rgba(47,58,46,.08);}
.rcp_form label,#rcp_registration_form label{color:var(--wp--preset--color--verde-escuro,#2F3A2E);font-weight:600;font-size:.9rem;}
.rcp_form input[type=text],.rcp_form input[type=email],.rcp_form input[type=password],#rcp_registration_form input[type=text],#rcp_registration_form input[type=email],#rcp_registration_form input[type=password]{width:100%;padding:.75rem .9rem;border:1px solid var(--wp--preset--color--linha,#E4D8C6);border-radius:12px;font-size:16px;background:#fff;}
#rcp_submit,.rcp_form input[type=submit],#rcp_registration_form input[type=submit]{background:var(--wp--preset--color--verde,#6E836A)!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:.85rem 1.75rem!important;font-weight:600!important;font-size:1rem!important;cursor:pointer;width:100%;margin-top:.5rem;}
#rcp_submit:hover{background:var(--wp--preset--color--verde-escuro,#2F3A2E)!important;}
.rcp_message,.rcp_error{border-radius:12px;}

/* Login / autenticação Tamiris */
.tamiris-auth{max-width:380px;margin:2rem auto;background:var(--wp--preset--color--off-white,#F3EFE6);border:1px solid var(--wp--preset--color--linha,#E4D8C6);border-radius:18px;padding:2rem 1.75rem;box-shadow:0 8px 25px rgba(47,58,46,.08);}
.tamiris-auth label{display:block;font-size:.9rem;color:var(--wp--preset--color--verde-escuro,#2F3A2E);font-weight:600;margin:.75rem 0 .35rem;}
.tamiris-auth input[type=text],.tamiris-auth input[type=password]{width:100%;padding:.75rem .9rem;border:1px solid var(--wp--preset--color--linha,#E4D8C6);border-radius:12px;font-size:16px;background:#fff;}
.tamiris-auth .button,.tamiris-auth__btn{display:inline-block;width:100%;text-align:center;background:var(--wp--preset--color--verde,#6E836A);color:#fff;border:0;border-radius:999px;padding:.85rem 1.5rem;font-weight:600;font-size:1rem;margin-top:1rem;cursor:pointer;text-decoration:none;}
.tamiris-auth .button:hover,.tamiris-auth__btn:hover{background:var(--wp--preset--color--verde-escuro,#2F3A2E);}
.tamiris-auth__links{margin-top:1rem;text-align:center;font-size:.9rem;}
.tamiris-auth .login-remember{font-weight:400;font-size:.85rem;color:var(--wp--preset--color--cinza,#746B63);}

/* Evita overflow horizontal e corte de títulos no mobile */
html,body{max-width:100%;overflow-x:hidden;}
.wp-block-heading,h1,h2,h3{overflow-wrap:break-word;word-wrap:break-word;}

/* Toque confortável no mobile (acessibilidade) */
@media (max-width:782px){
  .wp-block-button__link{min-height:44px;display:inline-flex;align-items:center;}
  input,select,textarea{font-size:16px !important;}
  .wp-block-buttons.is-content-justification-center .wp-block-button{width:100%;max-width:340px;}
  .wp-block-button__link{width:100%;justify-content:center;text-align:center;}
}

/* ── Formulário de isca grátis (lead) ───────────────────────────── */
.tamiris-lead{max-width:520px;margin:1.5rem auto;}
.tamiris-lead__form{display:flex;flex-direction:column;gap:.75rem;background:#F3EFE6;border:1px solid #E4D8C6;border-radius:18px;padding:1.75rem;}
.tamiris-lead__form input[type=text],
.tamiris-lead__form input[type=email],
.tamiris-lead__form input[type=tel]{width:100%;padding:.85rem 1rem;border:1px solid #ddd2c0;border-radius:12px;font-size:1rem;background:#fff;font-family:inherit;}
.tamiris-lead__form input:focus{outline:none;border-color:#B89A6A;box-shadow:0 0 0 3px rgba(184,154,106,.25);}
.tamiris-lead__form button{background:#B89A6A;color:#2F3A2E;font-weight:700;border:none;border-radius:999px;padding:.95rem 1.25rem;font-size:1rem;cursor:pointer;transition:filter .2s;}
.tamiris-lead__form button:hover{filter:brightness(1.05);}
.tamiris-lead__priv{font-size:.78rem;color:#746B63;margin:.25rem 0 0;text-align:center;}
.tamiris-lead__priv a{color:#2F3A2E;}
.tamiris-lead__check{display:flex;gap:.5rem;align-items:flex-start;color:#746B63;font-size:.82rem;line-height:1.45;}
.tamiris-lead__check a{color:#2F3A2E;}
.tamiris-lead__ok{background:#2F3A2E;color:#F3EFE6;border-radius:18px;padding:1.75rem;text-align:center;}
.tamiris-lead__ok-title{font-size:1.2rem;font-weight:700;color:#B89A6A;margin:0 0 .5rem;}

/* ── Componentes Tamiris ────────────────────────────────────────── */
.tamiris-check{list-style:none;padding-left:0;margin:0;}
.tamiris-check li{position:relative;padding-left:1.75rem;margin:.5rem 0;line-height:1.5;}
.tamiris-check li::before{content:"";position:absolute;left:0;top:.45em;width:.7rem;height:.7rem;border-radius:50%;background:#B89A6A;}
.tamiris-xlist{list-style:none;padding-left:0;margin:0;}
.tamiris-xlist li{position:relative;padding-left:1.75rem;margin:.5rem 0;line-height:1.5;color:#746B63;}
.tamiris-xlist li::before{content:"\00d7";position:absolute;left:.1rem;top:-.05em;color:#b0a99c;font-size:1.2rem;font-weight:700;}

/* Split imagem/texto */
@media (max-width:781px){
  .tamiris-split{display:flex;flex-direction:column;}
  .tamiris-split>.wp-block-column:nth-child(1){order:2;}
  .tamiris-split>.wp-block-column:nth-child(2){order:1;}
  .tamiris-split.tamiris-text-first-mobile>.wp-block-column:nth-child(1){order:1;}
  .tamiris-split.tamiris-text-first-mobile>.wp-block-column:nth-child(2){order:2;}
}

/* Garantir empilhamento e zero overflow no mobile */
@media (max-width:781px){
  .wp-block-columns{flex-wrap:wrap !important;}
  .wp-block-column{flex-basis:100% !important;}
}
.wp-block-group.alignfull{overflow-x:clip;}
img,iframe,svg,video{max-width:100%;height:auto;}
.wp-block-heading,h1,h2,h3,h4{overflow-wrap:break-word;}

/* CTA do header */
.tamiris-header-cta a{background:#6E836A;color:#FFF !important;border-radius:999px;padding:.55rem 1.1rem !important;font-weight:600;}
.tamiris-header-cta a:hover{background:#2F3A2E;}

/* Formulário de contato */
.tamiris-form{max-width:640px;margin:1.5rem auto 0;}
.tamiris-form__form{display:flex;flex-direction:column;gap:.85rem;background:#F3EFE6;border:1px solid #E4D8C6;border-radius:18px;padding:1.75rem;}
.tamiris-form__row{display:flex;gap:.85rem;}
.tamiris-form__row>*{flex:1;}
.tamiris-form input[type=text],.tamiris-form input[type=email],.tamiris-form input[type=tel],.tamiris-form textarea{width:100%;padding:.85rem 1rem;border:1px solid #ddd2c0;border-radius:12px;font-size:1rem;background:#fff;font-family:inherit;}
.tamiris-form input:focus,.tamiris-form textarea:focus{outline:none;border-color:#B89A6A;box-shadow:0 0 0 3px rgba(184,154,106,.25);}
.tamiris-form__check{font-size:.85rem;color:#746B63;display:flex;gap:.5rem;align-items:flex-start;}
.tamiris-form__check a{color:#2F3A2E;}
.tamiris-form button{background:#6E836A;color:#fff;font-weight:700;border:none;border-radius:999px;padding:.95rem 1.25rem;font-size:1rem;cursor:pointer;transition:filter .2s;}
.tamiris-form button:hover{filter:brightness(1.1);}
.tamiris-form__ok{background:#2F3A2E;color:#F3EFE6;border-radius:18px;padding:1.75rem;text-align:center;max-width:640px;margin:1.5rem auto 0;}
.tamiris-form__ok-title{font-size:1.2rem;font-weight:700;color:#B89A6A;margin:0 0 .5rem;}
@media (max-width:781px){ .tamiris-form__row{flex-direction:column;} }

/* ── Polimento visual ───────────────────────────────────────────── */
.tamiris-photo{margin:0;overflow:hidden;border-radius:22px;border:1px solid rgba(184,154,106,.22);box-shadow:0 18px 44px rgba(47,58,46,.10);background:#DCCDBA;}
.tamiris-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.tamiris-photo figcaption{padding:.9rem 1rem;text-align:center;font-family:var(--wp--preset--font-family--titulo);color:#2F3A2E;font-size:1.05rem;background:#fff;}
.tamiris-placeholder{border:1px solid rgba(184,154,106,.24);box-shadow:inset 0 0 0 1px rgba(255,255,255,.45);background:radial-gradient(circle at 30% 20%, rgba(255,255,255,.55), transparent 32%),linear-gradient(135deg,#DCCDBA,#F3EFE6) !important;}
.tamiris-section-title{position:relative;text-align:center;}
.tamiris-section-title:before{content:"";display:block;width:42px;height:1px;margin:0 auto 1rem;background:#B89A6A;}
.wp-block-columns:has(.tamiris-premium-card){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1.5rem;}
.wp-block-columns:has(.tamiris-premium-card)>.wp-block-column{min-width:0;}
.tamiris-premium-card{background:#FFFDF8;border:1px solid #E4D8C6;border-radius:18px;box-shadow:0 8px 25px rgba(47,58,46,.08);overflow:hidden;}
.tamiris-premium-card h3{font-size:clamp(1.25rem, 1rem + .55vw, 1.55rem);line-height:1.08;overflow-wrap:normal;word-break:normal;hyphens:none;}
.tamiris-premium-card p{font-size:1rem;line-height:1.62;}
.tamiris-premium-card .wp-block-buttons{justify-content:center;margin-top:1.35rem;}
.tamiris-premium-card .wp-block-button{width:auto !important;max-width:100%;}
.tamiris-premium-card .wp-block-button__link{width:auto !important;max-width:100%;min-width:154px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;padding:.72rem 1.2rem !important;font-size:.94rem;line-height:1.15;text-align:center;white-space:nowrap;overflow-wrap:normal;word-break:normal;}
.tamiris-icon-pill{width:62px;height:62px;margin:0 auto .75rem;display:grid;place-items:center;border-radius:50%;background:rgba(184,154,106,.12);color:#B89A6A;}
.tamiris-icon-pill:empty:before{content:"✦";font-family:var(--wp--preset--font-family--titulo);font-size:1.45rem;line-height:1;color:#B89A6A;}
.tamiris-hero-mark{position:relative;}
.tamiris-hero-mark:before{content:"";position:absolute;inset:auto auto -18px -18px;width:120px;height:120px;border-left:1px solid rgba(184,154,106,.34);border-bottom:1px solid rgba(184,154,106,.34);border-radius:0 0 0 42px;pointer-events:none;}
.tamiris-review-card{min-height:245px;}
.tamiris-review-card .quote{color:#B89A6A;font-family:Georgia,serif;font-size:2.2rem;line-height:1;}
.tamiris-map-shell{display:grid;grid-template-columns:1.5fr .85fr;overflow:hidden;border-radius:18px;border:1px solid #E4D8C6;background:#fff;box-shadow:0 8px 25px rgba(47,58,46,.08);}
.tamiris-map-shell iframe{min-height:380px;}
.tamiris-map-info{padding:2rem;display:flex;flex-direction:column;justify-content:center;}
@media (max-width:781px){
  .tamiris-photo{border-radius:18px;}
  .tamiris-map-shell{grid-template-columns:1fr;}
  .tamiris-map-shell iframe{min-height:300px;}
  .tamiris-map-info{padding:1.4rem;}
  .tamiris-hero-mark:before{display:none;}
}

/* Componentes globais */
.tamiris-header{position:fixed;top:var(--wp-adminbar-height,0);right:0;left:0;z-index:1000;border-bottom:1px solid rgba(228,216,198,.82);box-shadow:0 10px 30px rgba(47,58,46,.06);}
.tamiris-header-row{min-height:52px;align-items:center !important;}
.tamiris-brand{display:inline-flex;align-items:center;flex:0 0 auto;line-height:0;text-decoration:none;}
.tamiris-brand__logo{display:block;width:auto;height:46px;object-fit:contain;border-radius:0;}
.tamiris-header-nav{flex:1 1 auto;min-width:0;}
.tamiris-header .wp-block-navigation a{color:#2F3A2E;text-decoration:none;}
.tamiris-header .wp-block-navigation{white-space:nowrap;}
.tamiris-header .wp-block-navigation a:hover,
.tamiris-account-link:hover{color:#B89A6A;}
.tamiris-account-link{color:#2F3A2E;font-size:.88rem;font-weight:700;text-decoration:none;white-space:nowrap;}
.tamiris-footer a{color:#D7C7A8 !important;text-decoration:none;}
.tamiris-footer a:hover{color:#fff !important;}
@media (max-width:1120px){
  .tamiris-header .wp-block-navigation{font-size:.88rem !important;}
  .tamiris-header-nav{gap:.55rem !important;}
  .tamiris-header-cta a{padding:.5rem .9rem !important;font-size:.9rem;}
}
@media (max-width:960px){
  .tamiris-account-link,
  .tamiris-header-cta{display:none !important;}
  .tamiris-brand__logo{height:42px;}
}

/* ── Área da Aluna: central, cursos, aulas e materiais ──────────── */
.tamiris-aluno-main{background:#F3EFE6;}
.tamiris-aluno{width:min(1180px, calc(100% - 2rem));margin:0 auto;padding:clamp(2rem, 5vw, 4rem) 0;color:#2F3A2E;font-family:var(--wp--preset--font-family--corpo, Montserrat, sans-serif);}
.tamiris-aluno *{box-sizing:border-box;min-width:0;}
.tamiris-aluno h1,
.tamiris-aluno h2,
.tamiris-aluno h3{margin:0;color:#2F3A2E;font-family:var(--wp--preset--font-family--titulo, "Cinzel", serif);line-height:1.12;letter-spacing:0;}
.tamiris-aluno h1{font-size:clamp(1.9rem, 3vw, 2.8rem);}
.tamiris-aluno h2{font-size:clamp(1.45rem, 2.2vw, 2rem);}
.tamiris-aluno h3{font-size:1.35rem;}
.tamiris-aluno p{margin:.6rem 0 0;color:#746B63;line-height:1.65;}
.tamiris-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin:0 0 1.25rem;color:#9a9082;font-size:.86rem;}
.tamiris-breadcrumbs a{color:#2F3A2E;text-decoration:none;font-weight:600;}
.tamiris-breadcrumbs strong{color:#B89A6A;}
.tamiris-aluno-eyebrow,
.tamiris-card-label,
.tamiris-status-line{margin:0 0 .55rem;color:#B89A6A;font-size:.76rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;}
.tamiris-aluno-hero{display:grid;grid-template-columns:minmax(0, 1.4fr) minmax(280px, .7fr);gap:1.5rem;align-items:stretch;border:1px solid rgba(184,154,106,.28);border-radius:22px;padding:clamp(1.5rem, 4vw, 3rem);background:linear-gradient(135deg, #2F3A2E 0%, #6E836A 62%, #DCCDBA 62%, #DCCDBA 100%);box-shadow:0 18px 42px rgba(47,58,46,.13);}
.tamiris-aluno-hero h1,
.tamiris-aluno-hero p{color:#FFFDF8;}
.tamiris-aluno-hero .tamiris-aluno-eyebrow{color:#E7D8B8;}
.tamiris-aluno-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.35rem;}
.tamiris-aluno-btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;max-width:100%;border:1px solid transparent;border-radius:999px;padding:.78rem 1.25rem;color:#2F3A2E;font-size:.92rem;font-weight:800;line-height:1.15;text-align:center;text-decoration:none;white-space:normal;cursor:pointer;transition:transform .18s ease, box-shadow .18s ease, background .18s ease;}
.tamiris-aluno-btn:hover{transform:translateY(-1px);text-decoration:none;}
.tamiris-aluno-btn--primary{background:#6E836A;color:#fff;box-shadow:0 10px 24px rgba(110,131,106,.22);}
.tamiris-aluno-btn--primary:hover{color:#fff;background:#2F3A2E;}
.tamiris-aluno-btn--gold{background:#B89A6A;color:#2F3A2E;box-shadow:0 10px 22px rgba(184,154,106,.24);}
.tamiris-aluno-btn--gold:hover{color:#2F3A2E;background:#d4c09e;}
.tamiris-aluno-btn--outline{background:#fff;color:#2F3A2E;border-color:#ddd2c0;}
.tamiris-aluno-btn--outline:hover{background:#DCCDBA;color:#2F3A2E;}
.tamiris-aluno-btn--ghost-light{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.45);}
.tamiris-aluno-btn--ghost-light:hover{background:rgba(255,255,255,.2);color:#fff;}
.tamiris-account-summary,
.tamiris-continue-card,
.tamiris-access-card,
.tamiris-course-card,
.tamiris-course-sidebar,
.tamiris-course-panel,
.tamiris-material-card,
.tamiris-lesson-article,
.tamiris-support-card,
.tamiris-empty{border:1px solid #E4D8C6;border-radius:18px;background:#FFFDF8;box-shadow:0 10px 30px rgba(47,58,46,.08);}
.tamiris-account-summary{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:1.35rem;}
.tamiris-account-summary .tamiris-aluno-eyebrow{color:#2F3A2E;}
.tamiris-summary-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:.75rem;}
.tamiris-summary-grid div{min-height:92px;display:flex;flex-direction:column;justify-content:center;border:1px solid rgba(184,154,106,.25);border-radius:14px;padding:1rem;background:#F3EFE6;}
.tamiris-summary-grid strong{color:#2F3A2E;font-family:var(--wp--preset--font-family--titulo, "Cinzel", serif);font-size:2.2rem;line-height:1;}
.tamiris-summary-grid span{margin-top:.35rem;color:#746B63;font-size:.82rem;font-weight:700;}
.tamiris-continue-card{display:grid;grid-template-columns:minmax(0, 1fr) auto;gap:1.25rem;align-items:center;margin-top:1.5rem;padding:1.4rem;}
.tamiris-progress{height:9px;overflow:hidden;border-radius:999px;background:#EAE3D6;margin-top:1rem;}
.tamiris-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg, #B89A6A, #6E836A);}
.tamiris-aluno-section{margin-top:clamp(2rem, 5vw, 3.5rem);}
.tamiris-aluno-section--first{margin-top:0;}
.tamiris-aluno-section-head{max-width:760px;margin:0 0 1.4rem;}
.tamiris-access-grid,
.tamiris-course-grid,
.tamiris-material-grid{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:1rem;}
.tamiris-course-grid{grid-template-columns:repeat(2, minmax(0, 1fr));}
.tamiris-material-grid{grid-template-columns:repeat(4, minmax(0, 1fr));}
.tamiris-access-card,
.tamiris-course-card,
.tamiris-material-card{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;padding:1.25rem;}
.tamiris-access-card p,
.tamiris-course-card p,
.tamiris-material-card p{margin:0;}
.tamiris-access-card .tamiris-aluno-btn,
.tamiris-course-card .tamiris-aluno-btn,
.tamiris-material-card .tamiris-aluno-btn{margin-top:auto;}
.tamiris-badge-row{display:flex;flex-wrap:wrap;gap:.5rem;}
.tamiris-badge{display:inline-flex;align-items:center;min-height:30px;border-radius:999px;padding:.3rem .75rem;background:#EBEEE4;color:#2F3A2E;font-size:.75rem;font-weight:800;}
.tamiris-badge--soft{background:#DCCDBA;color:#8a6f3e;}
.tamiris-badge--locked{background:#efeae2;color:#746B63;}
.tamiris-course-thumb{width:100%;min-height:155px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg, rgba(78,89,66,.95), rgba(110,131,106,.72)),#2F3A2E;color:#FFFDF8;font-family:var(--wp--preset--font-family--titulo, "Cinzel", serif);font-size:1.75rem;font-weight:700;text-align:center;padding:1.2rem;}
.tamiris-course-thumb--gold{background:linear-gradient(135deg, rgba(184,154,106,.95), rgba(244,238,230,.85)),#B89A6A;color:#2F3A2E;}
.tamiris-small{font-size:.86rem;}
.tamiris-empty{max-width:720px;padding:2rem;}
.tamiris-course-layout{display:grid;grid-template-columns:320px minmax(0, 1fr);gap:1.2rem;align-items:start;}
.tamiris-course-sidebar{position:sticky;top:112px;padding:1.2rem;}
.tamiris-course-sidebar h2{font-size:1.4rem;margin-bottom:1rem;}
.tamiris-lesson-list{display:flex;flex-direction:column;gap:.65rem;}
.tamiris-lesson-item{display:grid;grid-template-columns:38px minmax(0, 1fr) auto;gap:.7rem;align-items:center;border:1px solid #ECE5DA;border-radius:14px;padding:.8rem;color:#2F3A2E;text-decoration:none;background:#fff;}
.tamiris-lesson-item:hover,
.tamiris-lesson-item.active{border-color:#B89A6A;background:#F3EFE6;}
.tamiris-lesson-item small{display:block;margin-top:.2rem;color:#746B63;font-size:.75rem;line-height:1.35;}
.tamiris-lesson-item em{color:#9a9082;font-size:.72rem;font-style:normal;font-weight:800;text-transform:uppercase;}
.tamiris-lesson-icon,
.tamiris-status{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#DCCDBA;color:#2F3A2E;font-weight:900;}
.tamiris-lesson-item.done .tamiris-lesson-icon,
.tamiris-lesson-card.done .tamiris-status{background:#2F3A2E;color:#fff;}
.tamiris-lesson-item.active .tamiris-lesson-icon,
.tamiris-lesson-card.active .tamiris-status{background:#B89A6A;color:#2F3A2E;}
.tamiris-course-panel{padding:1.3rem;}
.tamiris-course-panel-head{padding:0 0 1.2rem;}
.tamiris-lesson-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:.9rem;}
.tamiris-lesson-card{display:grid;grid-template-columns:42px minmax(0, 1fr);gap:.85rem;align-items:start;border:1px solid #E4D8C6;border-radius:16px;padding:1rem;background:#fff;}
.tamiris-lesson-card.full{grid-column:1 / -1;border-color:#B89A6A;background:#F3EFE6;}
.tamiris-lesson-card h3{font-size:1.18rem;}
.tamiris-lesson-card p{margin:.4rem 0 .85rem;font-size:.9rem;}
.tamiris-course-materials{margin-top:1.4rem;padding-top:1.4rem;border-top:1px solid #E4D8C6;}
.tamiris-course-materials h2{margin-bottom:1rem;}
.tamiris-material-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:14px;background:#DCCDBA;color:#8a6f3e;font-weight:900;}
.tamiris-lesson-page{display:grid;grid-template-columns:minmax(0, 1fr) 330px;gap:1.25rem;align-items:start;}
.tamiris-lesson-article,
.tamiris-support-card{padding:clamp(1.2rem, 3vw, 2rem);}
.tamiris-lesson-head{max-width:840px;}
.tamiris-lesson-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;}
.tamiris-lesson-meta span{border:1px solid #E4D8C6;border-radius:999px;padding:.35rem .75rem;background:#F3EFE6;color:#746B63;font-size:.78rem;font-weight:800;}
.tamiris-lesson-cover{margin:1.5rem 0;}
.tamiris-lesson-cover img{width:100%;height:auto;display:block;border-radius:18px;}
.tamiris-lesson-content{color:#4a4038;}
.tamiris-lesson-content h2,
.tamiris-content-block h2{margin:1.4rem 0 .4rem;font-size:1.55rem;}
.tamiris-lesson-content p{color:#5a5048;}
.tamiris-alert-box{margin:1rem 0 0;border-left:4px solid #B89A6A;border-radius:0 14px 14px 0;padding:1rem;background:#F3EFE6;color:#2F3A2E;}
.tamiris-lesson-nav{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:1.6rem;padding-top:1.25rem;border-top:1px solid #E4D8C6;}
.tamiris-complete-form{margin:0;}
.tamiris-complete-form button{font-family:inherit;}
.tamiris-lesson-support{display:flex;flex-direction:column;gap:1rem;position:sticky;top:112px;}
.tamiris-support-card h2{font-size:1.35rem;}
.tamiris-check-mini{list-style:none;margin:1rem 0 0;padding:0;}
.tamiris-check-mini li{position:relative;padding-left:1.45rem;margin:.5rem 0;color:#5a5048;line-height:1.45;}
.tamiris-check-mini li:before{content:"";position:absolute;left:0;top:.5em;width:.55rem;height:.55rem;border-radius:50%;background:#B89A6A;}
@media (max-width:1080px){
  .tamiris-access-grid,
  .tamiris-material-grid{grid-template-columns:repeat(2, minmax(0, 1fr));}
  .tamiris-course-layout,
  .tamiris-lesson-page{grid-template-columns:1fr;}
  .tamiris-course-sidebar,
  .tamiris-lesson-support{position:static;}
}
@media (max-width:760px){
  .tamiris-aluno{width:min(100% - 1rem, 1180px);padding:1rem 0 2rem;}
  .tamiris-aluno-hero{grid-template-columns:1fr;border-radius:18px;background:#2F3A2E;}
  .tamiris-account-summary{background:#FFFDF8;}
  .tamiris-account-summary .tamiris-aluno-eyebrow,
  .tamiris-account-summary p{color:#2F3A2E;}
  .tamiris-continue-card{grid-template-columns:1fr;}
  .tamiris-access-grid,
  .tamiris-course-grid,
  .tamiris-material-grid,
  .tamiris-lesson-grid{grid-template-columns:1fr;}
  .tamiris-aluno-btn{width:100%;}
  .tamiris-lesson-item{grid-template-columns:38px minmax(0, 1fr);}
  .tamiris-lesson-item em{grid-column:2;}
  .tamiris-lesson-card.full{grid-column:auto;}
  .tamiris-lesson-nav{flex-direction:column;align-items:stretch;}
  .tamiris-complete-form{width:100%;}
}

/* ════════════════════════════════════════════════════════════════
   RODAPÉ PREMIUM — Tamiris Ferreira (design do protótipo rodape.html)
   ════════════════════════════════════════════════════════════════ */
.tf-footer-premium{ background:linear-gradient(135deg,#2F3A2E 0%,#263024 100%); color:#F3EFE6; padding:72px 0 28px; border-top:1px solid rgba(184,154,106,.35); font-family:"Montserrat",sans-serif; }
.tf-footer-premium .tf-container{ width:min(1120px,92%); margin:0 auto; }
.tf-footer-shell{ display:grid; grid-template-columns:1.45fr .85fr .85fr 1fr; gap:42px; align-items:start; }
.tf-footer-brand h2{ font-family:"Cinzel",serif; font-size:clamp(2rem,4vw,3.4rem); line-height:1; margin:8px 0 18px; color:#F3EFE6; letter-spacing:.03em; }
.tf-footer-brand p,.tf-footer-contact p,.tf-footer-bottom{ font-weight:300; line-height:1.8; color:rgba(243,239,230,.78); }
.tf-footer-mark{ width:54px; height:54px; border:1px solid rgba(184,154,106,.65); border-radius:999px; display:flex; align-items:center; justify-content:center; font-family:"Cinzel",serif; color:#DCCDBA; margin-bottom:18px; }
.tf-footer-eyebrow{ color:#B89A6A !important; text-transform:uppercase; letter-spacing:.18em; font-size:.74rem; margin:0; }
.tf-footer-signature{ margin-top:22px; padding-top:18px; border-top:1px solid rgba(184,154,106,.28); font-family:"Cinzel",serif; color:#DCCDBA; letter-spacing:.08em; }
.tf-footer-column h3,.tf-footer-contact h3{ font-family:"Cinzel",serif; font-size:1rem; color:#DCCDBA; margin:0 0 18px; letter-spacing:.05em; }
.tf-footer-column a{ display:block; color:rgba(243,239,230,.78); text-decoration:none; font-size:.92rem; margin-bottom:13px; transition:color .2s ease, transform .2s ease; }
.tf-footer-column a:hover{ color:#B89A6A; transform:translateX(3px); }
.tf-footer-premium .tf-footer-cta{ display:inline-flex; margin-top:16px; padding:13px 20px; border-radius:999px; background:#DCCDBA; color:#2F3A2E; text-decoration:none; font-weight:600; }
.tf-footer-premium .tf-footer-cta:hover{ background:#c9b89c; }
.tf-footer-bottom{ margin-top:54px; padding-top:24px; border-top:1px solid rgba(220,205,186,.16); display:flex; justify-content:space-between; gap:18px; font-size:.82rem; }
@media (max-width:900px){
  .tf-footer-premium{ padding:56px 0 96px; }
  .tf-footer-shell{ grid-template-columns:1fr; gap:34px; }
  .tf-footer-bottom{ flex-direction:column; }
}
/* Acessibilidade: rótulos visíveis só para leitores de tela */
.screen-reader-text{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* ── ÁREA DA ALUNA OCULTA ATÉ O LANÇAMENTO ─────────────────────────
   Para REATIVAR o botão do header e o link do rodapé, apague este bloco. */
.tamiris-header-cta,
.tf-aluna-link { display: none !important; }

/* ── FORMULÁRIO: rótulos visíveis, dicas e erros ────────────────────── */
.tamiris-form__field {
	display: flex;
	flex-direction: column;
	gap: .35rem;
	margin: 0 0 1.1rem;
}

.tamiris-form__field label,
.tamiris-form__check {
	font-family: var(--wp--preset--font-family--corpo, inherit);
	font-size: .92rem;
	font-weight: 600;
	color: #3B312C;
	letter-spacing: .01em;
}

.tamiris-form__req { color: #B89A6A; }

.tamiris-form__hint {
	font-size: .82rem;
	color: #746B63;
}

.tamiris-form__field.has-error input,
.tamiris-form__field.has-error textarea {
	border-color: #A6432F;
	box-shadow: 0 0 0 3px rgba(166, 67, 47, .12);
}

.tamiris-form__field.has-error label { color: #A6432F; }

.tamiris-form__check.has-error {
	color: #A6432F;
	text-decoration-color: #A6432F;
}

.tamiris-form__alert {
	display: none;
	margin: 0 0 1.25rem;
	padding: .9rem 1.1rem;
	border-left: 4px solid #A6432F;
	border-radius: 6px;
	background: #FBF1EE;
	color: #6E2C1E;
	font-size: .94rem;
	line-height: 1.5;
}

.tamiris-form__alert.is-visible { display: block; }

/* Foco visível consistente (acessibilidade por teclado) */
.tamiris-form__form :is(input, textarea, button):focus-visible,
.tf-btn:focus-visible,
.wp-block-button__link:focus-visible,
.tf-footer-premium a:focus-visible {
	outline: 3px solid #B89A6A;
	outline-offset: 2px;
}

/* Respeita quem pediu menos movimento no sistema */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
		scroll-behavior: auto !important;
	}
}

/* A barra flutuante do WhatsApp não cobre o fim do conteúdo */
body { padding-bottom: 0; }

@media (max-width: 782px) {
	.tf-footer-bottom { padding-bottom: 5.5rem; }
}

/* ── AVALIAÇÕES DO GOOGLE na paleta Tamiris ──────────────────────────
   O plugin é genérico e sai com cores neutras; aqui ele veste a marca.
   As variáveis vêm do próprio plugin, então nada é sobrescrito à força. */
.grp-avaliacoes-google-widget {
	--grp-avaliacoes-google-blue: #2F3A2E;   /* verde escuro da marca */
	--grp-avaliacoes-google-gold: #B89A6A;   /* dourado das estrelas */
	--grp-avaliacoes-google-cream: #F3EFE6;  /* off-white de fundo */
	--grp-avaliacoes-google-text: #3B312C;
	--grp-avaliacoes-google-line: #DCCDBA;   /* bege das bordas */
	font-family: var(--wp--preset--font-family--corpo, inherit);
}

.grp-avaliacoes-google-widget :is(h2, h3, strong) {
	font-family: var(--wp--preset--font-family--titulo, inherit);
	letter-spacing: .02em;
}

/* Reserva de espaço: evita o salto de layout enquanto as avaliações pintam */
.grp-avaliacoes-google-reviews { min-height: 220px; }

/* ── Contato: a caixa do mapa acompanha a altura da lista de pontos ──── */
#localizacao .contact-layout {
	align-items: stretch;
	grid-template-columns: 1fr;
	gap: 24px;
}

#localizacao .contact-layout > div:first-child {
	display: flex;
	flex-direction: column;
}

@media (min-width: 1041px) {
	#localizacao .proof-list {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 16px;
	}

	#localizacao .proof-item {
		min-height: 168px;
		grid-template-columns: 72px 1fr;
		align-items: start;
	}
}

/* "Santa Efigênia · Belo Horizonte" cabe em uma linha no desktop */
#localizacao h2 {
	max-width: none;
	font-size: clamp(1.4rem, 2.1vw, 1.95rem);
	text-wrap: nowrap;
}

@media (max-width: 720px) {
	#localizacao h2 {
		text-wrap: balance;
	}
}

/* ── Barra de administração: limita o avatar ──────────────────────────
   Quando a foto do perfil vem do Google (lh3.googleusercontent.com), ela
   chega em tamanho grande. Se o CSS do WordPress for adiado pelo cache,
   a imagem aparece enorme sobre a página. Só quem está logado vê. */
#wpadminbar img,
#wpadminbar .avatar {
	max-width: 26px !important;
	max-height: 26px !important;
	width: 26px !important;
	height: 26px !important;
	border-radius: 50%;
	object-fit: cover;
}

#wpadminbar #wp-admin-bar-user-info img,
#wpadminbar #wp-admin-bar-user-actions img {
	max-width: 64px !important;
	max-height: 64px !important;
	width: 64px !important;
	height: 64px !important;
}

/* Nada da barra de administração escapa da própria barra */
#wpadminbar {
	overflow: visible;
}

#wpadminbar .ab-sub-wrapper img {
	flex: 0 0 auto;
}

/* ══ FOTOS DO ACERVO ═══════════════════════════════════════════════════
   As fotos ficam no tema (assets/fotos), então acompanham o zip e ficam
   iguais no local e na produção. Corte proporcional sempre — nunca esticar. */

/* Foto do hero e dos blocos verticais */
.photo {
	position: relative;
	overflow: hidden;
}

.photo img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	object-position: center 28%; /* preserva rosto e mãos no corte */
}

.photo.story-portrait img {
	object-position: center 22%;
}

/* Cards de caminho (home): foto ao fundo, texto legível por cima */
.path-foto {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: block;
}

.path-foto img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
}

.path-card {
	position: relative;
	isolation: isolate;
}

.path-card > *:not(.path-foto) {
	position: relative;
	z-index: 2;
}

.path-card::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(39, 49, 38, 0.28), rgba(39, 49, 38, 0.82));
}

/* Fotos dos serviços e das etapas */
.service-foto,
.curriculum-foto,
.timeline-foto {
	display: block;
	margin-bottom: 16px;
	border-radius: var(--radius-sm);
	overflow: hidden;
	aspect-ratio: 4 / 3;
}

.timeline-foto,
.curriculum-foto {
	aspect-ratio: 3 / 2;
	max-width: 220px;
}

.service-foto img,
.curriculum-foto img,
.timeline-foto img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
}

/* Casos das Experiências */
.case-visual.has-foto {
	height: 240px;
	min-height: 240px;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2px;
	padding: 0;
	background: none;
}

.case-visual.has-foto:has(img + img) {
	grid-template-columns: 1fr 1fr; /* antes e depois lado a lado */
}

.case-visual.has-foto img {
	width: 100%;
	height: 240px;
	display: block;
	object-fit: cover;
}

/* Mapa e miniaturas do Contato */
.map-placeholder.has-foto {
	position: relative;
	overflow: hidden;
	align-items: flex-end;
}

.map-placeholder.has-foto img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}

.map-placeholder.has-foto > *:not(img):not(.foto-ilustrativa) {
	position: relative;
	z-index: 2;
}

.proof-thumb.has-foto {
	overflow: hidden;
	padding: 0;
	background: none;
}

.proof-thumb.has-foto img {
	width: 100%;
	height: 100%;
	min-height: 72px;
	display: block;
	object-fit: cover;
	border-radius: 12px;
}

/* Selo discreto para as imagens simuladas — honestidade com a visitante */
.foto-ilustrativa {
	position: absolute;
	right: 10px;
	bottom: 10px;
	z-index: 3;
	padding: 4px 9px;
	border-radius: 999px;
	background: rgba(39, 49, 38, 0.72);
	color: #fffdf8;
	font-size: 0.62rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	backdrop-filter: blur(4px);
	pointer-events: none;
}

.service-foto,
.curriculum-foto,
.timeline-foto,
.case-visual.has-foto,
.proof-thumb.has-foto {
	position: relative;
}

@media (max-width: 720px) {
	.timeline-foto,
	.curriculum-foto {
		max-width: none;
	}

	.case-visual.has-foto img {
		min-height: 180px;
	}
}

/* Quando há foto real, ela ocupa a moldura inteira — o gradiente do protótipo
   era só o preenchimento do espaço reservado. */
.photo:has(img) {
	padding: 0;
	background: none;
}

.photo:has(img) img {
	position: absolute;
	inset: 0;
	border-radius: inherit;
}

.photo:has(img)::before,
.photo:has(img)::after {
	display: none;
}

/*
 * Experiências — modelo de caso.
 * As três perguntas formam a primeira linha. A comprovação fica abaixo, em
 * largura total, para não sugerir que faltam imagens nos itens 01–03.
 */
.tamiris-page-experiencias .timeline {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tamiris-page-experiencias .timeline > .timeline-item:nth-child(3) {
	border-right: 0;
}

.tamiris-page-experiencias .timeline > .timeline-item:nth-child(4) {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: 48px minmax(260px, 380px) minmax(0, 1fr);
	grid-template-rows: auto 1fr;
	column-gap: 30px;
	align-items: start;
	border-top: 1px solid rgba(255, 253, 248, 0.18);
	border-right: 0;
}

.tamiris-page-experiencias .timeline > .timeline-item:nth-child(4) > span:first-child {
	grid-column: 1;
	grid-row: 1 / -1;
}

.tamiris-page-experiencias .timeline > .timeline-item:nth-child(4) > .timeline-foto {
	grid-column: 2;
	grid-row: 1 / -1;
	width: 100%;
	max-width: none;
	margin: 0;
	aspect-ratio: 16 / 9;
}

.tamiris-page-experiencias .timeline > .timeline-item:nth-child(4) > h3 {
	grid-column: 3;
	grid-row: 1;
	margin-top: 0;
}

.tamiris-page-experiencias .timeline > .timeline-item:nth-child(4) > p {
	grid-column: 3;
	grid-row: 2;
	max-width: 62ch;
}

@media (max-width: 900px) {
	.tamiris-page-experiencias .timeline {
		grid-template-columns: 1fr;
	}

	.tamiris-page-experiencias .timeline > .timeline-item {
		border-right: 0;
		border-bottom: 1px solid rgba(255, 253, 248, 0.18);
	}

	.tamiris-page-experiencias .timeline > .timeline-item:nth-child(4) {
		grid-column: auto;
		grid-template-columns: 42px minmax(200px, 0.8fr) minmax(0, 1fr);
		border-top: 0;
		border-bottom: 0;
	}
}

@media (max-width: 640px) {
	.tamiris-page-experiencias .timeline > .timeline-item:nth-child(4) {
		display: block;
	}

	.tamiris-page-experiencias .timeline > .timeline-item:nth-child(4) > .timeline-foto {
		margin: 18px 0 22px;
	}
}
