/*
Theme Name: MS Digital Concept
Template: generatepress
Description: Tema-filho com o novo design de msdigitalconcept.com (2026).
Author: MS Digital Concept
Version: 1.3.8
Text Domain: msdc
*/
/* Layout: the current site's dark identity, modernised. Charcoal ground, black-and-white photography of Magda teaching, yellow as the one accent, condensed display type, rows and full-bleed bands instead of cards. Single deliberate dark look, with light paper sections for reading. */
:root{
  --char:#141413; --char2:#1D1D1B; --paper:#F2F0EA; --ink:#141413; --white:#F7F6F2;
  --muted-d:#A8A69E; --muted-l:#5B5953; --line-d:#34332F; --line-l:#D6D3C8;
  --yellow:#FFCC00;
  --display:"Big Shoulders Display", "Arial Narrow", Impact, sans-serif;
  --body:"Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;
  --w:1240px;
  color-scheme:dark;
}
*{box-sizing:border-box}
body{background:var(--char);color:var(--white);font-family:var(--body);font-size:17px;line-height:1.6}
a{color:inherit}
p,h1,h2,h3{margin:0}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
.wrap{max-width:var(--w);margin-inline:auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.d{font-family:var(--display);font-weight:900;text-transform:uppercase;line-height:.88;letter-spacing:.005em}
.y{color:var(--yellow)}
.btn{display:inline-block;font-weight:800;font-size:.95rem;padding:1rem 1.5rem;text-decoration:none;border:2px solid var(--yellow);background:var(--yellow);color:var(--ink)}
.btn:hover{background:transparent;color:var(--yellow)}
.btn.ghost{background:transparent;color:var(--white);border-color:var(--line-d)}
.btn.ghost:hover{border-color:var(--yellow);color:var(--yellow)}
.light{background:var(--paper);color:var(--ink)}
.light .btn.ghost{color:var(--ink);border-color:var(--ink)}
.light .btn.ghost:hover{background:var(--ink);color:var(--yellow)}
.photo{background:#2A2A27 center/cover;filter:grayscale(1) contrast(1.05);display:flex;align-items:flex-end;padding:16px;font-size:.8rem;font-weight:600;color:var(--muted-d);max-width:100%}

/* header */
.msdc-header{background:var(--char);position:relative;z-index:5}
.msdc-header.is-front{position:absolute;inset:0 0 auto;background:transparent}
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:22px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;letter-spacing:.02em}
.mono{width:42px;height:42px;border:2px solid var(--yellow);border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:1.05rem;color:var(--yellow)}
.nav ul.menu{display:flex;gap:28px;list-style:none;margin:0;padding:0;font-weight:600;font-size:.93rem}
.nav ul.menu a{text-decoration:none;color:#D9D7CF}
.nav ul.menu a:hover{color:var(--yellow)}
.nav .r{display:flex;gap:18px;align-items:center;font-weight:700;font-size:.88rem}
.nav .btn{padding:.65rem 1.1rem;font-size:.85rem}
@media (max-width:920px){.nav ul.menu{display:none}}
@media (max-width:440px){.nav .lang,.logo span{display:none}}

/* hero */
.hero{position:relative;min-height:min(760px,100svh);display:grid;align-items:end;overflow:hidden}
.hero .photo{position:absolute;inset:0 0 0 40%;filter:none;padding:0;
  background:linear-gradient(90deg,var(--char) 0%,rgba(20,20,19,.55) 22%,rgba(20,20,19,0) 55%),url(img/hero-aula.jpg) center 40%/cover}
.hero .wrap{position:relative;padding-block:130px clamp(40px,6vw,70px)}
.hero .kicker{font-weight:700;color:#D9D7CF;max-width:44ch;font-size:1.05rem}
.hero h1{font-size:clamp(4.2rem,15vw,12.5rem);margin-top:22px}
.hero .lead{margin-top:24px;max-width:50ch;color:#CFCDC5}
.hero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
@media (max-width:760px){.hero .photo{inset:0;opacity:.35}}

/* stats strip */
.stats{border-top:1px solid var(--line-d);border-bottom:1px solid var(--line-d)}
.stats .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.stat{padding:26px 22px;border-left:1px solid var(--line-d);display:flex;gap:14px;align-items:baseline}
.stat:first-child{border-left:0;padding-left:0}
.stat b{font-family:var(--display);font-weight:800;font-size:clamp(2.4rem,4.6vw,3.6rem);line-height:1;color:var(--white);font-variant-numeric:tabular-nums}
.stat:first-child b{color:var(--yellow)}
.stat span{font-size:.85rem;color:var(--muted-d);line-height:1.35;max-width:16ch}
@media (max-width:900px){.stats .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}.stat:nth-child(3){border-left:0;padding-left:0}.stat{border-top:1px solid var(--line-d)}.stat:nth-child(-n+2){border-top:0}}
@media (max-width:480px){.stats .wrap{grid-template-columns:1fr}.stat{border-left:0;padding-left:0;border-top:1px solid var(--line-d)}.stat:first-child{border-top:0}}

/* sectors line */
.sectors{padding-block:clamp(36px,5vw,56px)}
.sectors p{font-size:clamp(1.25rem,2.6vw,1.9rem);font-weight:600;line-height:1.35;max-width:46ch;color:#D9D7CF}
.sectors p b{color:var(--white)}

/* services */
.services{padding-block:clamp(64px,9vw,110px)}
.services h2{font-size:clamp(3rem,8vw,6.2rem)}
.services .intro{max-width:52ch;color:var(--muted-l);margin-top:16px}
.list{margin-top:40px}
.row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 40px;gap:16px 48px;align-items:center;padding-block:30px;border-top:1px solid var(--line-l);text-decoration:none}
.row:last-child{border-bottom:1px solid var(--line-l)}
.row h3{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(2rem,4.4vw,3.4rem);line-height:.95}
.row p{color:var(--muted-l)}
.row .go{width:40px;height:40px;border-radius:50%;border:2px solid var(--ink);display:grid;place-items:center;font-weight:800;transition:background .15s,transform .15s}
.row:hover .go{background:var(--yellow);border-color:var(--yellow);transform:rotate(-45deg)}
.row:hover h3{color:#000}
.sites{margin-top:24px;color:var(--muted-l)}
.sites a{color:var(--ink);font-weight:700}
@media (max-width:760px){.row{grid-template-columns:1fr;gap:8px}.row .go{display:none}}
@media (prefers-reduced-motion:reduce){.row .go{transition:none}}

/* featured case */
.case{background:var(--yellow);color:var(--ink);padding-block:clamp(56px,8vw,100px)}
.case-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,72px);align-items:end}
.case .label{font-weight:800;font-size:.95rem}
.case h2{font-size:clamp(3rem,7.5vw,6rem);margin-top:14px}
.case .txt p{max-width:48ch}
.case .figs{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:8px 36px;margin-top:22px}
.case .figs b{font-family:var(--display);font-weight:900;font-size:clamp(2.4rem,5vw,3.6rem);line-height:1;display:block}
.case .figs span{font-size:.85rem;font-weight:600}
.case a{font-weight:800;display:inline-block;margin-top:22px}
@media (max-width:820px){.case-grid{grid-template-columns:1fr}}

/* saas */
.saas{padding-block:clamp(64px,9vw,110px)}
.saas-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px)}
.saas h2{font-size:clamp(3rem,7vw,5.6rem)}
.saas .copy p{color:#CFCDC5;margin-bottom:16px;max-width:54ch}
.saas .copy p:first-child{font-size:1.3rem;font-weight:700;color:var(--white);line-height:1.35}
.saas ul{list-style:none;margin:8px 0 28px;padding:0;border-top:1px solid var(--line-d)}
.saas li{padding:14px 0;border-bottom:1px solid var(--line-d);font-weight:600}
.saas li span{color:var(--muted-d);font-weight:400}
@media (max-width:820px){.saas-grid{grid-template-columns:1fr}}

/* teaching */
.teach{padding-block:clamp(64px,9vw,110px)}
.teach-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 72px;align-items:end}
.teach h2{font-size:clamp(3rem,7vw,5.6rem)}
.teach .head-p{color:var(--muted-l);max-width:50ch}
.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-top:40px}
.gallery figure{margin:0;position:relative;min-width:0}
.gallery figure:first-child{grid-row:span 2}
.gallery img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;display:block;max-width:100%}
.gallery figure:first-child img{aspect-ratio:auto}
.gallery figcaption{position:absolute;left:0;bottom:0;background:var(--ink);color:var(--white);font-size:.75rem;font-weight:700;padding:5px 9px}
.teach .facts{display:flex;flex-wrap:wrap;gap:10px 36px;margin-top:28px;font-weight:700}
.teach .facts span{border-left:4px solid var(--yellow);padding-left:12px}
@media (max-width:820px){.teach-head{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.gallery figure:first-child{grid-column:span 2;grid-row:auto}.gallery figure:first-child img{aspect-ratio:16/10}}

/* about */
.about{padding-block:clamp(64px,9vw,110px)}
.about-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,5vw,72px);align-items:center}
.about .portrait{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 20%;display:block;max-width:100%}
.saas-img{width:100%;max-width:420px;aspect-ratio:4/5;object-fit:cover;display:block;margin-top:32px;filter:grayscale(1) contrast(1.05)}
.about h2{font-size:clamp(3.4rem,8vw,6.4rem)}
.about p{color:#CFCDC5;margin-top:20px;max-width:56ch}
.about dl{display:grid;grid-template-columns:auto 1fr;gap:12px 24px;margin:28px 0 0;padding-top:24px;border-top:1px solid var(--line-d)}
.about dt{font-weight:800;color:var(--yellow);font-size:.9rem}
.about dd{margin:0;color:#D9D7CF}
.about .btn{margin-top:30px}
@media (max-width:820px){.about-grid{grid-template-columns:1fr}.about .portrait{max-width:380px}.saas-img{display:none}}

/* reviews + faq */
.reviews{padding-block:clamp(64px,9vw,100px)}
.reviews h2,.faq h2{font-size:clamp(2.6rem,6vw,4.6rem)}
.widget{margin-top:28px;border:2px dashed var(--line-l);padding:32px;text-align:center;color:var(--muted-l);font-weight:600}
.faq{padding-block:0 clamp(64px,9vw,110px)}
.faq-list{margin-top:28px;border-top:1px solid var(--line-l)}
details{border-bottom:1px solid var(--line-l);padding-block:20px}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px;font-weight:800;font-size:clamp(1.1rem,2vw,1.3rem)}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--muted-l)}
details[open] summary::after{content:"−"}
details p{margin-top:10px;color:var(--muted-l);max-width:68ch}

/* final */
.final{padding-block:clamp(72px,10vw,130px);position:relative;overflow:hidden}
.final h2{font-size:clamp(4rem,14vw,11rem)}
.final .bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px;margin-top:36px}
.final .bottom p{max-width:40ch;color:#CFCDC5;font-size:1.1rem}
.msdc-footer{border-top:1px solid var(--line-d)}
.msdc-footer .wrap{display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;padding-block:26px;font-size:.88rem;color:var(--muted-d)}
.proto{background:var(--yellow);color:var(--ink);font-size:.78rem;font-weight:700;text-align:center;padding-block:7px;position:relative;z-index:6}

/* GeneratePress: páginas a toda a largura */
.msdc-page .site.grid-container,.msdc-page .grid-container{max-width:none;padding:0}
.msdc-page .site-content{display:block;padding:0}
.msdc-page .inside-article,.msdc-page .separate-containers .inside-article{padding:0;background:transparent}
.msdc-page .entry-content{margin:0}
.msdc-page .entry-content > *{margin-block:0}
.msdc-page .content-area,.msdc-page .site-main{margin:0;width:100%}
.msdc-page .wp-block-group > .wp-block-group__inner-container{display:contents}
.nav ul.menu{display:flex;gap:28px;list-style:none;margin:0;padding:0;font-weight:600;font-size:.93rem}
.nav ul.menu li{position:relative}
.nav ul.menu .sub-menu{display:none;position:absolute;top:100%;left:-14px;background:var(--char);list-style:none;margin:0;padding:10px 14px;min-width:240px;border:1px solid var(--line-d)}
.nav ul.menu li:hover > .sub-menu,.nav ul.menu li:focus-within > .sub-menu{display:block}
.nav ul.menu .sub-menu a{display:block;padding:6px 0}
.lang{display:flex;gap:8px;list-style:none;margin:0;padding:0}
.lang a{text-decoration:none;color:#D9D7CF}.lang .current-lang a{color:var(--yellow)}
/* Botões do editor de blocos */
.wp-block-button.btn,.wp-block-button.ghost{border:0;padding:0;background:none}
.wp-block-button .wp-block-button__link{border-radius:0;font-weight:800;font-size:.95rem;padding:1rem 1.5rem;border:2px solid var(--yellow);background:var(--yellow);color:var(--ink)}
.wp-block-button .wp-block-button__link:hover{background:transparent;color:var(--yellow)}
.wp-block-button.ghost .wp-block-button__link{background:transparent;color:var(--white);border-color:var(--line-d)}
.light .wp-block-button.ghost .wp-block-button__link{color:var(--ink);border-color:var(--ink)}
.light .wp-block-button.ghost .wp-block-button__link:hover{background:var(--ink);color:var(--yellow)}
.wp-block-buttons{gap:12px}
/* Ajustes para os blocos do editor */
.msdc-page .row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.row h3 a{text-decoration:none;color:inherit}
.about .portrait,.saas-img{margin:0;overflow:hidden;aspect-ratio:4/5}
.portrait img,.saas-img img{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}
.saas-img{max-width:420px;margin-top:32px}
.gallery .wp-block-image{margin:0;position:relative;min-width:0}
.gallery .wp-block-image img{width:100%;height:100%;object-fit:cover}
.wp-block-image figcaption.wp-element-caption{margin:0}
.wp-block-details summary{cursor:pointer}
.msdc-page .entry-content p:empty{display:none}
/* v1.0.1 */
.msdc-page .wp-block-button .wp-block-button__link{background:var(--yellow)!important;color:var(--ink)!important;border:2px solid var(--yellow)!important;border-radius:0!important}
.msdc-page .wp-block-button .wp-block-button__link:hover{background:transparent!important;color:var(--yellow)!important}
.msdc-page .wp-block-button.ghost .wp-block-button__link{background:transparent!important;color:var(--white)!important;border-color:var(--line-d)!important}
.msdc-page .light .wp-block-button.ghost .wp-block-button__link{color:var(--ink)!important;border-color:var(--ink)!important}
.msdc-page .light .wp-block-button.ghost .wp-block-button__link:hover{background:var(--ink)!important;color:var(--yellow)!important}
.case a{color:var(--ink)}
.case .figs{gap:8px 28px}
.case .figs b{font-size:clamp(2rem,4vw,3rem)}
.msdc-page .entry-content a{text-underline-offset:3px}

/* v1.0.2 espaçamento entre elementos */
.msdc-page .entry-content .wp-block-group__inner-container > * + *{margin-top:24px}
.msdc-page .entry-content .wp-block-group__inner-container > .d + *{margin-top:32px}
.msdc-page .stats .wp-block-group__inner-container > *,
.msdc-page .gallery .wp-block-group__inner-container > *,
.msdc-page .figs .wp-block-group__inner-container > *,
.msdc-page .row .wp-block-group__inner-container > *,
.msdc-page .list .wp-block-group__inner-container > *,
.msdc-page .teach-head .wp-block-group__inner-container > *,
.msdc-page [class*="-grid"] > .wp-block-group__inner-container > *,
.msdc-page .bottom .wp-block-group__inner-container > *{margin-top:0}
.msdc-page .gallery{margin-top:48px!important}
.msdc-page .teach .facts{margin-top:36px!important}
.msdc-page .list{margin-top:40px!important}
.msdc-page .hero .wp-block-buttons{margin-top:32px!important}
.saas-img{filter:none}
.saas-img img{object-position:center 15%}
/* v1.0.3 Contactos */
.contact-hero{padding-block:150px clamp(48px,7vw,80px)}
.contact-hero h1{font-size:clamp(3.4rem,9vw,7.5rem);max-width:12ch}
.contact-hero .lead{max-width:56ch;color:#CFCDC5;font-size:1.1rem}
.booking{padding-block:clamp(56px,8vw,100px)}
.booking-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,64px);align-items:start}
.booking h2{font-size:clamp(2.4rem,5vw,3.8rem);scroll-margin-top:90px}
.booking-info p{color:var(--muted-l);max-width:46ch}
.contact-dl{display:grid;grid-template-columns:auto 1fr;gap:10px 20px;margin:28px 0 0;padding-top:22px;border-top:1px solid var(--line-l)}
.contact-dl dt{font-weight:800}.contact-dl dd{margin:0;color:var(--muted-l)}
.calendar-embed{background:#fff;border:2px solid var(--ink);min-width:0}
.calendar-embed iframe{display:block;width:100%;height:720px}
.calendar-alt{padding:10px 16px;font-size:.85rem;color:var(--muted-l);border-top:1px solid var(--line-l);margin:0}
@media (max-width:860px){.booking-grid{grid-template-columns:1fr}}

/* v1.1.0 menu para telemóvel */
.nav-toggle{display:none;align-items:center;gap:6px;background:none;border:1px solid var(--line-d);color:var(--white);padding:.55rem .8rem;cursor:pointer;flex-direction:column;justify-content:center}
.nav-toggle span{display:block;width:20px;height:2px;background:currentColor}
.nav-toggle b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (max-width:920px){
 .nav-toggle{display:inline-flex;margin-left:auto}
 .nav .r .btn{display:none}
 .msdc-header:not(.open) .nav ul.menu{display:none}
 .msdc-header.open{background:var(--char)}
 .msdc-header.open ul.menu{display:flex;flex-direction:column;gap:0;position:absolute;top:100%;left:0;right:0;background:var(--char);padding:8px max(20px,env(safe-area-inset-left,0px)) 24px;border-top:1px solid var(--line-d);border-bottom:1px solid var(--line-d)}
 .msdc-header.open ul.menu > li > a{display:block;padding:14px 0;font-size:1.1rem;border-bottom:1px solid var(--line-d)}
 .msdc-header.open ul.menu .sub-menu{display:block;position:static;border:0;padding:0 0 8px 14px;min-width:0}
 .msdc-header.open ul.menu .sub-menu a{padding:8px 0;color:var(--muted-d)}
}
@media (max-width:440px){.nav .lang{display:none}}
/* v1.1.0 páginas interiores */
.page-hero{padding-block:140px clamp(48px,7vw,90px)}
.page-hero h1{font-size:clamp(3rem,7.5vw,6.4rem);max-width:14ch}
.page-hero .lead{color:#CFCDC5;max-width:58ch;font-size:1.08rem}
.page-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(28px,5vw,64px);align-items:center}
.page-hero .portrait{margin:0;aspect-ratio:4/5;overflow:hidden}
.page-hero .portrait img{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}
@media (max-width:820px){.page-hero-grid{grid-template-columns:1fr}.page-hero .portrait{max-width:380px}}
.sec{padding-block:clamp(56px,8vw,100px)}
.sec h2{font-size:clamp(2.4rem,5.5vw,4.4rem)}
.sec p{max-width:68ch}
.sec .intro,.sec .note{color:var(--muted-d)}
.light .intro,.light .note,.light p{color:var(--muted-l)}
.light .row h3,.light h3{color:var(--ink)}
.sec .row h3{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(1.7rem,3.6vw,2.6rem);line-height:.95}
.sec:not(.light) .row{border-color:var(--line-d)}
.sec:not(.light) .row p{color:#CFCDC5}
.big-p{font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.5}
.msdc-table{margin:0;overflow-x:auto}
.msdc-table table{width:100%;border-collapse:collapse;font-size:.98rem}
.msdc-table th{text-align:left;font-weight:800;padding:14px 16px 14px 0;border-bottom:2px solid currentColor}
.msdc-table td{padding:16px 16px 16px 0;border-bottom:1px solid var(--line-l);vertical-align:top}
.sec:not(.light) .msdc-table td{border-color:var(--line-d);color:#D9D7CF}
.msdc-table td:first-child{font-weight:700}
.msdc-table thead th:empty{display:none}
ul.check{list-style:none;padding:0;margin:0;display:grid;gap:0;border-top:1px solid var(--line-d)}
.light ul.check{border-color:var(--line-l)}
ul.check li{padding:16px 0 16px 34px;border-bottom:1px solid var(--line-d);position:relative;max-width:80ch}
.light ul.check li{border-color:var(--line-l)}
ul.check li::before{content:"";position:absolute;left:0;top:24px;width:16px;height:4px;background:var(--yellow)}
.steps-list{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;gap:0}
.steps-list li{counter-increment:s;padding:18px 0 18px 64px;position:relative;border-bottom:1px solid var(--line-l);max-width:80ch}
.sec:not(.light) .steps-list li{border-color:var(--line-d)}
.steps-list li::before{content:counter(s);position:absolute;left:0;top:10px;font-family:var(--display);font-weight:900;font-size:2.4rem;line-height:1;color:var(--yellow)}
.light .steps-list li::before{color:var(--ink)}
.stats-inline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.stats-inline .stat{border-left:0;padding:0;display:block}
.stats-inline .stat b{display:block;font-family:var(--display);font-weight:900;font-size:clamp(2.6rem,5vw,4rem);line-height:1;color:var(--yellow)}
.stats-inline .stat span{display:block;margin-top:8px;color:var(--muted-d);font-size:.92rem}
@media (max-width:760px){.stats-inline{grid-template-columns:1fr 1fr}}
.sec.faq{padding-top:clamp(56px,8vw,100px)}
.sec.faq:not(.light) details{border-color:var(--line-d)}
.sec.faq:not(.light) .faq-list{border-color:var(--line-d)}
.sec.faq:not(.light) details p{color:#CFCDC5}
.sec.faq:not(.light) summary::after{color:var(--muted-d)}
.widget{border:2px dashed var(--line-l);padding:28px;text-align:center}
.sec:not(.light) .widget{border-color:var(--line-d)}
.case .note{font-size:.85rem;margin-top:12px}

/* v1.1.3 linhas numa coluna no telemóvel */
@media (max-width:760px){.msdc-page .row{grid-template-columns:1fr;gap:8px}}

/* v1.2.0 blog, artigos e glossário */
.msdc-blog #page,.msdc-blog .site-content{max-width:none;background:var(--paper);color:var(--ink)}
.msdc-blog .site-content{display:block;padding:0}
.msdc-blog .content-area,.msdc-blog .site-main{width:100%;margin:0}
.msdc-blog .inside-article{max-width:800px;margin:0 auto;padding:clamp(48px,7vw,90px) 20px;background:transparent!important}
.msdc-blog.separate-containers .site-main>*{margin-bottom:0}
.msdc-blog .entry-title,.msdc-blog .entry-title a{font-family:var(--display);font-weight:900;text-transform:uppercase;line-height:.92;font-size:clamp(2.4rem,6vw,4.2rem);color:var(--ink);text-decoration:none}
.blog .entry-title,.archive .entry-title{font-size:clamp(1.8rem,4vw,2.6rem)}
.msdc-blog .entry-meta{color:var(--muted-l);font-size:.9rem;margin-top:14px}
.msdc-blog .entry-meta a{color:var(--muted-l)}
.msdc-blog .entry-content{margin-top:32px;color:#2B2A27}
.msdc-blog .entry-content>*+*{margin-top:18px}
.msdc-blog .entry-content h2{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(1.8rem,4vw,2.6rem);line-height:.95;margin-top:48px;color:var(--ink)}
.msdc-blog .entry-content h3{font-weight:800;font-size:1.25rem;margin-top:32px;color:var(--ink)}
.msdc-blog .entry-content a{color:var(--ink);text-decoration-color:var(--yellow);text-decoration-thickness:2px;text-underline-offset:3px}
.msdc-blog .entry-content ul,.msdc-blog .entry-content ol{padding-left:1.2em}
.msdc-blog .entry-content li+li{margin-top:8px}
.msdc-blog .wp-block-details{border-top:1px solid var(--line-l);padding:14px 0}
.msdc-blog .wp-block-details summary{font-weight:800;cursor:pointer}
.msdc-blog .wp-block-details p{margin-top:10px}
.msdc-blog .post-image img,.msdc-blog .featured-image img{width:100%;height:auto}
.post-cta{background:var(--char);color:var(--white);padding:28px;margin-top:40px!important}
.post-cta p{color:var(--white);margin:0 0 18px}
.post-cta .wp-block-button .wp-block-button__link{background:var(--yellow)!important;color:var(--ink)!important;border:2px solid var(--yellow)!important;border-radius:0!important}
.post-author{border-top:2px solid var(--ink);margin-top:56px;padding-top:24px;display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between}
.post-author p{margin:0;max-width:52ch;color:var(--muted-l)}
.post-author b{color:var(--ink)}
.msdc-blog footer.entry-meta{display:none}
.blog-hero{max-width:800px;margin:0 auto;padding:clamp(56px,8vw,100px) 20px 0}
.blog-hero h1{font-size:clamp(2.8rem,7vw,5rem)}
.blog-hero .kicker{color:var(--muted-l)}
.blog .inside-article,.archive .inside-article{padding-block:40px;border-bottom:1px solid var(--line-l)}
.msdc-blog .paging-navigation{max-width:800px;margin:0 auto;padding:30px 20px}
.msdc-footer .links a{color:inherit}
.glossary-nav{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px!important;position:sticky;top:0;background:var(--paper);padding:12px 0;z-index:2}
.glossary-nav a{display:inline-grid;place-items:center;width:40px;height:40px;border:1px solid var(--ink);text-decoration:none;font-weight:800;color:var(--ink)}
.glossary-nav a:hover{background:var(--ink);color:var(--yellow)}
.glossary .glossary-letter{font-size:clamp(3rem,6vw,4.5rem);margin-top:48px!important;scroll-margin-top:80px}
.glossary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;border-top:2px solid var(--ink)}
.msdc-page .glossary-list .wp-block-group__inner-container>*{margin-top:0}
.glossary .term{padding:20px 0;border-bottom:1px solid var(--line-l)}
.glossary .term h3{font-weight:800;font-size:1.1rem;color:var(--ink);scroll-margin-top:80px}
.glossary .term p{margin-top:6px!important}
.glossary .term a{color:var(--ink);text-decoration-color:var(--yellow);text-decoration-thickness:2px}
@media (max-width:760px){.glossary-list{grid-template-columns:1fr}}

/* v1.2.1 */
.msdc-table table,.msdc-table th,.msdc-table td{border-left:0;border-right:0;border-top:0}
.msdc-table table{border:0}
.blog-hero{padding-bottom:28px;border-bottom:2px solid var(--ink)}

/* v1.2.3 reviews em secções escuras */
.sec:not(.light) .ti-widget .ti-name,.sec:not(.light) .ti-widget .ti-review-content,.sec:not(.light) .ti-widget .ti-review-text-container,.sec:not(.light) .ti-widget .ti-inner,.sec:not(.light) .ti-widget .ti-read-more span{color:#E8E6DF!important}
.sec:not(.light) .ti-widget .ti-date{color:#A8A69E!important}

/* v1.2.4 hero: menos altura; no telemóvel a foto passa para baixo do texto */
.hero{min-height:min(660px,90svh)}
.hero .wrap{padding-block:110px clamp(36px,5vw,60px)}
.hero h1{font-size:clamp(4rem,13vw,10.5rem)}
.hero .photo{background-size:cover;background-position:center 40%;background-repeat:no-repeat}
.hero .photo::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--char) 0%,rgba(20,20,19,.55) 22%,rgba(20,20,19,0) 55%)}
@media (max-width:760px){
 .hero{display:flex;flex-direction:column;min-height:0}
 .hero .wrap{padding-block:100px 32px}
 .hero h1{font-size:clamp(3.6rem,17vw,5.5rem)}
 .hero .photo{position:relative;inset:auto;order:2;opacity:1;width:100%;aspect-ratio:4/3;flex:none}
 .hero .photo::before{display:none}
}

/* v1.2.5 menos espaço no topo das páginas interiores */
.page-hero{padding-top:clamp(48px,7vw,96px)}
.contact-hero{padding-top:clamp(48px,7vw,96px)}

/* v1.2.6 botão do menu imune aos estilos do Elementor nos artigos antigos */
.msdc-header .nav-toggle,.msdc-header .nav-toggle:hover,.msdc-header .nav-toggle:focus{background:none!important;border:1px solid var(--line-d)!important;color:var(--white)!important;border-radius:0!important;box-shadow:none!important}

/* v1.2.8 hero alinhado com o cabeçalho (o wrap não pode encolher dentro da grelha) */
.hero > .wrap,.hero .wrap{width:100%;box-sizing:border-box}

/* v1.2.9 formulários (WPForms) */
.form-sec .wpforms-container{max-width:760px;margin-top:24px!important}
.form-sec .wpforms-field-label{font-weight:800;color:var(--ink);font-size:1rem}
.form-sec .wpforms-field input[type=text],.form-sec .wpforms-field input[type=email],.form-sec .wpforms-field select,.form-sec .wpforms-field textarea{border:1px solid var(--ink)!important;border-radius:0!important;background:#fff!important;padding:12px 14px!important;font-family:var(--body)!important;font-size:1rem!important;max-width:100%!important;width:100%!important}
.form-sec .wpforms-submit{background:var(--yellow)!important;color:var(--ink)!important;border:2px solid var(--yellow)!important;border-radius:0!important;font-weight:800!important;padding:1rem 1.5rem!important;font-family:var(--body)!important}
.form-sec .wpforms-submit:hover{background:var(--ink)!important;color:var(--yellow)!important;border-color:var(--ink)!important}
.form-sec .wpforms-confirmation-container-full{background:var(--white);border:2px solid var(--ink);color:var(--ink)}
#candidatura{scroll-margin-top:90px}

/* v1.3.0 hover das linhas em secções escuras: amarelo em vez de preto */
.sec:not(.light) .row:hover h3,.msdc-page .sec:not(.light) .row:hover h3 a{color:var(--yellow)!important}
.sec:not(.light) .row:hover p{color:#F7F6F2}

/* v1.3.1 lista de artigos: imagem pequena à esquerda, título e resumo à direita */
.blog .site-main,.archive .site-main{max-width:1000px;margin:0 auto!important}
.blog-hero{max-width:1000px}
.blog .inside-article,.archive .inside-article{max-width:1000px;display:grid;grid-template-columns:280px minmax(0,1fr);column-gap:36px;align-items:start;padding-block:36px}
.blog .inside-article > .post-image,.archive .inside-article > .post-image{grid-column:1;grid-row:1 / span 3;margin:0!important}
.blog .post-image img,.archive .post-image img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}
.blog .inside-article > *:not(.post-image),.archive .inside-article > *:not(.post-image){grid-column:2}
.blog .inside-article:not(:has(.post-image)),.archive .inside-article:not(:has(.post-image)){grid-template-columns:minmax(0,1fr)}
.blog .inside-article:not(:has(.post-image)) > *,.archive .inside-article:not(:has(.post-image)) > *{grid-column:1}
.blog .entry-title,.archive .entry-title{font-size:clamp(1.5rem,2.6vw,2rem)!important;line-height:1}
.blog .entry-summary,.archive .entry-summary{margin-top:12px;color:var(--muted-l)}
.blog .entry-summary p,.archive .entry-summary p{margin:0}
.blog .read-more,.archive .read-more{display:inline-block;margin-top:10px;font-weight:800;color:var(--ink);text-decoration-color:var(--yellow);text-decoration-thickness:2px}
@media (max-width:700px){
 .blog .inside-article,.archive .inside-article{grid-template-columns:minmax(0,1fr)}
 .blog .inside-article > *,.archive .inside-article > *{grid-column:1!important;grid-row:auto!important}
 .blog .inside-article > .post-image,.archive .inside-article > .post-image{margin-bottom:18px!important}
}

/* v1.3.4 hero no telemóvel: foto no topo, texto por baixo */
@media (max-width:760px){
 .hero{padding-top:84px}
 .hero .photo{order:-1}
 .hero .wrap{padding-block:28px 32px}
}

/* v1.3.5 hovers em fundo escuro: nada fica preto */
.msdc-header .logo,.msdc-header .logo:hover,.msdc-header .logo:focus{color:var(--white)!important}
.msdc-header .logo:hover span{color:var(--yellow)!important}
.msdc-header .lang a:hover,.msdc-footer a:hover{color:var(--yellow)!important}
.hero a:not(.wp-block-button__link):hover,.page-hero a:not(.wp-block-button__link):hover,.sec:not(.light) a:not(.wp-block-button__link):hover,.case-dark a:hover,.final a:not(.wp-block-button__link):hover,.stats a:hover,.sectors a:hover,.about a:not(.wp-block-button__link):hover,.post-cta a:not(.wp-block-button__link):hover{color:var(--yellow)!important}

/* v1.3.6 hero no telemóvel: foto por trás do texto, com overlay mais escuro à esquerda */
@media (max-width:760px){
 .hero{display:grid;align-items:end;min-height:min(640px,92svh);padding-top:0}
 .hero .photo{position:absolute;inset:0;order:0;opacity:1;width:auto;aspect-ratio:auto;background-position:62% 35%}
 .hero .photo::before{display:block;background:linear-gradient(90deg,rgba(20,20,19,.88) 0%,rgba(20,20,19,.62) 55%,rgba(20,20,19,.3) 100%),linear-gradient(0deg,rgba(20,20,19,.75) 0%,rgba(20,20,19,0) 60%)}
 .hero .wrap{padding-block:120px 36px}
}

/* v1.3.7 números no telemóvel: textos alinhados numa coluna e linhas entre todos */
@media (max-width:480px){
 .stat{display:grid;grid-template-columns:7.5rem minmax(0,1fr);column-gap:16px;align-items:center;padding-block:22px}
 .stat span{max-width:none}
 .stat:nth-child(2){border-top:1px solid var(--line-d)}
}
