/* ==========================================================
   RoboThink | CSS para Elementor Pro > Definições do Site > CSS Personalizado
   Cobre cabeçalho, rodapé, página inicial e popup.
   ========================================================== */

:root{
  --rt-paper:#FAFAF7;
  --rt-raised:#FFFFFF;
  --rt-ink:#3A3B3F;
  --rt-soft:#6E7075;
  --rt-line:rgba(58,59,63,0.13);
  --rt-line2:rgba(58,59,63,0.26);
  --rt-orange:#EE6F24;
  --rt-teal:#00A092;
  --rt-focus:#0FA0DE;
}
html{scroll-behavior:smooth;scroll-padding-top:90px;}
body{background:var(--rt-paper);}
.rt-txt p{margin:0;}
.rt-txt a{color:inherit;}
.elementor a:focus-visible,.elementor button:focus-visible{outline:2.5px solid var(--rt-focus);outline-offset:2px;}

/* ---------- eyebrow ---------- */
.rt-eyebrow .elementor-heading-title{display:flex;align-items:center;gap:10px;}
.rt-eyebrow .elementor-heading-title::before{content:"";width:18px;height:1px;background:var(--rt-line2);display:inline-block;flex-shrink:0;}
.rt-eyebrow--dark .elementor-heading-title::before{background:rgba(250,250,247,0.4);}

/* ---------- botões ---------- */
.rt-btn .elementor-button{transition:transform .15s ease,background .15s ease,border-color .15s ease,color .15s ease;white-space:nowrap;}
.rt-btn .elementor-button:hover{transform:translateY(-1px);}
.rt-btn .elementor-button-icon{transition:transform .15s ease;}
.rt-btn .elementor-button:hover .elementor-button-icon{transform:translateX(3px);}
.rt-btn .elementor-button-icon i{font-size:.85em;}
.rt-link .elementor-button:hover{transform:none;}
.rt-link .elementor-button-icon i{font-size:12px;}

/* ---------- cabeçalho ---------- */
.rt-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}
.rt-nav .elementor-nav-menu--main .elementor-item{border-radius:100px;transition:background .15s ease,box-shadow .15s ease;}
.rt-nav .elementor-nav-menu--main .elementor-item:hover,
.rt-nav .elementor-nav-menu--main .elementor-item.elementor-item-active{background:var(--rt-raised);box-shadow:0 1px 0 rgba(58,59,63,0.05);}
.rt-nav .elementor-nav-menu--main .sub-menu{border:1px solid var(--rt-line);border-radius:14px;box-shadow:0 12px 28px rgba(22,33,58,0.14);padding:8px;min-width:220px;}
.rt-nav .elementor-nav-menu--main .sub-menu .elementor-sub-item{border-radius:8px;}
.rt-nav .elementor-nav-menu--main .sub-menu .elementor-sub-item:hover{background:#D6F1ED;color:var(--rt-teal);}
.rt-nav .elementor-nav-menu--dropdown{border-radius:0 0 14px 14px;border-top:1px solid var(--rt-line);}
.rt-menu-kit,.rt-menu-cta{display:none;}
.elementor-nav-menu--dropdown .rt-menu-kit,.elementor-nav-menu--dropdown .rt-menu-cta{display:block;}
.elementor-nav-menu--dropdown .rt-menu-kit a{color:#F2AE0E;font-weight:600;}
.elementor-nav-menu--dropdown .rt-menu-cta a{color:#EE6F24;font-weight:600;}
@media (max-width:1320px){ .rt-kit{display:none !important;} }

/* ---------- cartões, etiquetas, ícones ---------- */
.rt-mascot img{width:auto !important;object-fit:contain;filter:drop-shadow(0 14px 26px rgba(20,20,20,0.16));}
.rt-slide-visual .rt-mascot img{height:372px;max-width:94%;}
.rt-mascot--onde img{height:470px;max-width:94%;}
.rt-sechead{max-width:640px;}
.rt-hero-sub{max-width:46ch;}
.rt-slide-copy .rt-txt{max-width:40ch;}
.rt-hero-art{aspect-ratio:1/1;}
.rt-about-photo{aspect-ratio:4/5;}
@media (max-width:1024px){ .rt-hero-art{aspect-ratio:16/10;} .rt-about-photo{aspect-ratio:16/9;} }
.rt-ref .elementor-widget-icon{opacity:.55;}
.rt-reftag{position:absolute !important;left:12px;bottom:12px;width:auto;}

/* ---------- carrossel (slides = contentores; controlos e JS em robothink.js) ---------- */
.rt-track{display:grid !important;position:relative;}
.rt-track > .rt-slide{grid-area:1 / 1;opacity:0;visibility:hidden;transition:opacity .5s ease;min-width:0;}
.rt-track > .rt-slide.active{opacity:1;visibility:visible;}
.elementor-editor-active .rt-track{display:flex !important;}
.elementor-editor-active .rt-track > .rt-slide{opacity:1;visibility:visible;}
.rt-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;}
.rt-dots{display:flex;gap:8px;}
.rt-dot{width:22px;height:4px;border-radius:4px;border:0 !important;background:var(--rt-line2) !important;padding:0 !important;min-width:0;cursor:pointer;transition:width .2s ease,background .2s ease;}
.rt-dot.active{background:var(--rt-orange) !important;width:30px;}
.rt-arrows{display:flex;gap:8px;}
.rt-nav-btn{width:34px;height:34px;border:1px solid var(--rt-line2) !important;border-radius:100px !important;background:transparent !important;color:var(--rt-ink) !important;display:flex;align-items:center;justify-content:center;padding:0 !important;cursor:pointer;}
.rt-nav-btn:hover{border-color:var(--rt-ink) !important;}
.rt-nav-btn svg{width:15px;height:15px;}
@media (max-width:1024px){ .rt-slide-visual{min-height:240px;} }

/* ---------- programas ---------- */
.rt-program-grid{overflow:hidden;}
.rt-program-card{box-shadow:1px 0 0 0 var(--rt-line),0 1px 0 0 var(--rt-line);min-height:280px;}
.rt-program-card .rt-link{margin-top:auto;}
.rt-program-card .rt-txt{flex:1;}

/* ---------- divisor ---------- */
.rt-trace{display:flex;align-items:center;width:100%;}
.rt-trace .n{width:9px;height:9px;border-radius:50%;background:var(--rt-paper);border:2px solid var(--rt-line2);flex-shrink:0;box-sizing:border-box;}
.rt-trace .l{flex:1;height:1px;background:var(--rt-line2);}

/* ---------- parcerias (faixa escura) ---------- */
.rt-reach{position:relative;overflow:visible;}
.rt-reach .rt-reach-mascot{text-align:center;}
.rt-reach .rt-reach-mascot img{height:190px;width:auto;filter:drop-shadow(0 14px 24px rgba(0,0,0,0.35));}
@media (min-width:1100px){
  .rt-reach{padding-right:360px !important;}
  .rt-reach .rt-reach-mascot{position:absolute;right:36px;bottom:0;margin:0;z-index:2;width:auto !important;}
  .rt-reach .rt-reach-mascot img{height:640px;}
  .rt-reach-grid{max-width:340px;}
}

/* ---------- onde estamos ---------- */
.rt-region-node{position:relative;}
.rt-region-node::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--rt-line2);}
.rt-region-row--first .rt-region-node::before{top:50%;}
.rt-region-row--last .rt-region-node::before{bottom:50%;}
.rt-region-dot{position:relative;z-index:1;display:block;width:14px;height:14px;border-radius:50%;background:var(--rt-raised);border:2px solid var(--rt-line2);margin:3px auto 0;box-sizing:border-box;}
.rt-mascot-credit{position:absolute !important;left:12px;bottom:12px;width:auto;}

/* ---------- rodapé ---------- */
.rt-footlinks a{display:block;text-decoration:none;padding-block:6px;color:var(--rt-ink);}
.rt-footlinks a:hover{color:var(--rt-orange);}
.rt-legal a{text-decoration:none;color:inherit;}
.rt-legal a:hover{color:var(--rt-orange);}
.rt-foot-brand .rt-txt{max-width:32ch;}

/* ---------- popup (formulário Afterschool) ---------- */
.rt-modal .elementor-field-group .elementor-field-textual{box-shadow:none;}
.rt-modal .elementor-field-label{letter-spacing:.04em;}
.rt-modal .elementor-field-type-acceptance label{font-size:13px;color:var(--rt-soft);line-height:1.55;}
.rt-modal .elementor-field-type-acceptance a{color:var(--rt-teal);text-decoration:underline;}

/* ---------- correções ---------- */
.rt-logo{flex:0 0 auto !important;width:auto !important;}
.rt-logo img{max-width:none;}
.rt-cta{background:linear-gradient(135deg,#EE6F24 0%,#F2AE0E 100%) !important;color:#5C2A05;}
.rt-social .elementor-icon{border-color:var(--rt-line2);color:var(--rt-ink);transition:border-color .15s ease,color .15s ease;}
.rt-social .elementor-icon:hover{border-color:var(--rt-orange);color:var(--rt-orange);}

/* ---------- páginas interiores ---------- */
.rt-hero-mascot .rt-mascot img{height:340px;max-width:90%;}
.rt-card-sm{min-height:0 !important;}
.rt-panel .rt-tag{background:#fff;}
.rt-accordion .elementor-accordion-item{border-color:var(--rt-line);}
.rt-accordion .elementor-accordion{border-radius:22px;overflow:hidden;border:1px solid var(--rt-line);background:var(--rt-raised);}
.rt-accordion .elementor-accordion-item{border-left:0;border-right:0;}
.rt-accordion .elementor-accordion-item:first-child{border-top:0;}
.rt-accordion .elementor-accordion-item:last-child{border-bottom:0;}
.rt-accordion .elementor-tab-content a{color:var(--rt-teal);text-decoration:underline;}
.rt-map-iframe{width:100%;height:240px;border:0;border-radius:10px;display:block;}
.rt-map-card{min-width:0;}
.rt-infolinks a{display:block;padding-block:2px;color:var(--rt-ink);text-decoration:none;}
.rt-infolinks a:hover{color:var(--rt-orange);}
.rt-footinfo a{padding-block:2px;}
.rt-newsletter .elementor-field-type-acceptance label{font-size:13px;color:var(--rt-soft);line-height:1.55;}
.rt-newsletter .elementor-field-type-acceptance a{color:var(--rt-teal);text-decoration:underline;}
.rt-sechead + .rt-chips{margin-top:0;}
