/*
Theme Name: Denilson Silva — Design Portfolio
Theme URI: https://denilsonsilva.com.br
Author: Denilson Silva
Author URI: https://denilsonsilva.com.br
Description: Portfólio executivo trilíngue (PT/EN/ES) de Denilson Silva, Head of Design. Minimalista, tipográfico e responsivo, com seletor de idioma integrado. Criação de páginas automática na ativação.
Version: 1.0
Requires at least: 5.9
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: denilson-silva
*/

:root{
  --paper:#F6F5F1;
  --ink:#16150F;
  --soft:#6B6760;
  --line:#E2DFD6;
  --accent:#EF7925;
  --accent-d:#D9610F;
  --paper-d:#EFEDE6;
  --maxw:1180px;
  --display:"Fraunces",Georgia,serif;
  --body:"Inter",system-ui,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body.no-scroll{overflow:hidden}
::selection{background:var(--accent);color:#fff}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}
.label{font-family:var(--mono);font-size:12px;letter-spacing:0.12em;text-transform:uppercase;color:var(--soft)}

header{position:fixed;top:0;left:0;right:0;z-index:50;background:color-mix(in srgb, var(--paper) 82%, transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .3s ease,background .3s ease}
header.scrolled{border-bottom-color:var(--line)}
nav{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{font-family:var(--mono);font-size:13px;letter-spacing:0.04em;font-weight:500}
.brand .dot{color:var(--accent)}
.navlinks{display:flex;gap:30px;align-items:center}
.navlinks a{font-family:var(--mono);font-size:12.5px;letter-spacing:0.04em;color:var(--soft);transition:color .2s;position:relative}
.navlinks a[aria-current="page"]{color:var(--ink)}
.navlinks a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1.5px;background:var(--accent)}
.nav-cta{border:1px solid var(--ink);border-radius:100px;padding:9px 18px;color:var(--ink)!important;transition:background .2s,color .2s}
.nav-cta[aria-current="page"]::after{display:none}
@media(hover:hover){.navlinks a:hover{color:var(--ink)}.nav-cta:hover{background:var(--ink);color:var(--paper)!important}}

.menu-btn{display:none;width:44px;height:44px;align-items:center;justify-content:center;background:none;border:0;cursor:pointer;margin-right:-10px}
.menu-btn .bars{position:relative;width:22px;height:12px;display:block}
.menu-btn .bars::before,.menu-btn .bars::after{content:"";position:absolute;left:0;width:22px;height:1.5px;background:var(--ink);transition:transform .3s ease,top .3s ease}
.menu-btn .bars::before{top:0}
.menu-btn .bars::after{top:10px}

.drawer{position:fixed;inset:0;z-index:60;background:var(--paper);display:flex;flex-direction:column;padding:24px 28px 32px;transform:translateX(100%);opacity:0;visibility:hidden;transition:transform .42s cubic-bezier(.16,1,.3,1),opacity .3s ease,visibility .42s}
.drawer.open{transform:translateX(0);opacity:1;visibility:visible}
.drawer .dtop{display:flex;justify-content:space-between;align-items:center;height:44px}
.drawer .dclose{width:44px;height:44px;background:none;border:0;font-family:var(--mono);font-size:12px;cursor:pointer;color:var(--ink);margin-right:-10px}
.drawer .dlinks{display:flex;flex-direction:column;margin-top:36px}
.drawer .dlinks a{font-family:var(--display);font-size:2rem;font-weight:380;letter-spacing:-0.01em;padding:16px 0;border-bottom:1px solid var(--line);opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease,color .2s}
.drawer.open .dlinks a{opacity:1;transform:none}
.drawer.open .dlinks a:nth-child(1){transition-delay:.08s}
.drawer.open .dlinks a:nth-child(2){transition-delay:.13s}
.drawer.open .dlinks a:nth-child(3){transition-delay:.18s}
.drawer.open .dlinks a:nth-child(4){transition-delay:.23s}
.drawer.open .dlinks a:nth-child(5){transition-delay:.28s}
.drawer.open .dlinks a:nth-child(6){transition-delay:.33s}
.drawer .dlinks a[aria-current="page"]{color:var(--accent)}
.drawer .dlinks a:active{color:var(--accent)}
.drawer .dfoot{margin-top:auto;display:flex;gap:20px;padding-top:24px}
.drawer .dfoot a{font-family:var(--mono);font-size:12px;color:var(--soft)}

section{padding:104px 0;border-top:1px solid var(--line)}
section.first{border-top:0}
.sec-head{display:flex;gap:18px;align-items:baseline;margin-bottom:52px}
.sec-head .num{font-family:var(--mono);font-size:12px;color:var(--accent)}
.sec-head h2{font-family:var(--display);font-weight:380;font-size:clamp(1.8rem,3.6vw,2.9rem);line-height:1.08;letter-spacing:-0.015em}

.reveal-up{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.reveal-up.in{opacity:1;transform:none}

.page-intro{padding:150px 0 0}
.page-intro .eyebrow{display:flex;gap:14px;align-items:center;margin-bottom:30px}
.page-intro .eyebrow .ln{height:1px;width:46px;background:var(--ink)}
.page-intro h1{font-family:var(--display);font-weight:340;font-size:clamp(2.3rem,5.4vw,4.4rem);line-height:1.04;letter-spacing:-0.02em;max-width:18ch}
.page-intro h1 em{font-style:italic;color:var(--accent)}
.page-intro .sub{margin-top:28px;max-width:60ch;color:#3a3830;font-size:18px}

.hero{padding:150px 0 92px}
.hero .eyebrow{display:flex;gap:14px;align-items:center;margin-bottom:34px}
.hero .eyebrow .ln{height:1px;width:46px;background:var(--ink)}
.hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:56px;align-items:center}
.thesis{font-family:var(--display);font-weight:340;font-size:clamp(2.4rem,5.6vw,5rem);line-height:1.02;letter-spacing:-0.02em;max-width:15ch}
.thesis em{font-style:italic;color:var(--accent)}
.thesis .reveal{display:inline-block;overflow:hidden;vertical-align:top}
.thesis .reveal > span{display:inline-block;transform:translateY(105%);transition:transform .9s cubic-bezier(.16,1,.3,1)}
.loaded .thesis .reveal > span{transform:translateY(0)}
.thesis .reveal:nth-child(2) > span{transition-delay:.08s}
.thesis .reveal:nth-child(3) > span{transition-delay:.16s}
.thesis .reveal:nth-child(4) > span{transition-delay:.24s}

.hero-portrait{position:relative;opacity:0;transform:translateY(20px) scale(.98);transition:opacity .9s ease .35s,transform .9s ease .35s}
.loaded .hero-portrait{opacity:1;transform:none}
.hero-portrait img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:6px;filter:grayscale(8%) contrast(1.02)}
.hero-portrait .portrait-ph{width:100%;aspect-ratio:4/5;border:1.5px dashed var(--line);border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:24px;background:var(--paper-d)}
.hero-portrait .portrait-ph .pt{font-family:var(--mono);font-size:12px;color:var(--soft);letter-spacing:0.04em}
.hero-portrait .portrait-ph .pf{font-family:var(--mono);font-size:11px;color:var(--accent)}
.hero-portrait .tagmark{position:absolute;left:-10px;bottom:18px;background:var(--accent);color:#fff;font-family:var(--mono);font-size:10.5px;letter-spacing:0.08em;text-transform:uppercase;padding:7px 12px;border-radius:3px}

.hero-meta{display:flex;flex-wrap:wrap;gap:48px;margin-top:60px;padding-top:34px;border-top:1px solid var(--line);opacity:0;transform:translateY(14px);transition:opacity .8s ease .5s,transform .8s ease .5s}
.loaded .hero-meta{opacity:1;transform:none}
.hero-meta .blk{max-width:330px;flex:1;min-width:220px}
.hero-meta .blk p{margin-top:8px;color:var(--soft);font-size:15.5px}
.hero-meta .blk .now{color:var(--ink)}

.indexnav{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.inav{background:var(--paper);padding:40px 34px 36px;display:flex;flex-direction:column;gap:14px;transition:background .25s ease,transform .2s ease}
.inav .ix{font-family:var(--mono);font-size:12px;color:var(--accent)}
.inav h3{font-family:var(--display);font-weight:420;font-size:1.55rem;letter-spacing:-0.01em;line-height:1.1}
.inav p{color:var(--soft);font-size:15px;flex:1}
.inav .go{font-family:var(--mono);font-size:12px;color:var(--ink);display:inline-flex;gap:8px;align-items:center}
.inav .go .ar{transition:transform .2s}
@media(hover:hover){.inav:hover{background:var(--paper-d)}.inav:hover .go .ar{transform:translateX(4px)}}
.inav:active{background:var(--paper-d);transform:scale(.99)}

.manifesto{display:grid;grid-template-columns:1fr 1.15fr;gap:80px}
.manifesto .lead{font-family:var(--display);font-weight:330;font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.32;letter-spacing:-0.01em}
.manifesto .lead em{font-style:italic;color:var(--accent)}
.manifesto .body p{color:#36342c;margin-bottom:20px}
.manifesto .body p:last-child{margin-bottom:0}
.manifesto .sig{font-family:var(--display);font-style:italic;font-size:1.3rem;margin-top:30px;color:var(--ink)}

.principles{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.principle{background:var(--paper);padding:42px 38px}
.principle .pn{font-family:var(--mono);font-size:12px;color:var(--accent);margin-bottom:20px;display:block}
.principle h3{font-family:var(--display);font-weight:400;font-size:1.5rem;line-height:1.15;margin-bottom:14px;letter-spacing:-0.01em}
.principle p{color:var(--soft);font-size:15.5px}

.timeline{display:flex;flex-direction:column}
.tl-row{display:grid;grid-template-columns:128px 1fr auto;gap:36px;align-items:start;padding:32px 0;border-top:1px solid var(--line);transition:padding-left .35s ease}
.tl-row:first-child{border-top:0}
@media(hover:hover){.tl-row:hover{padding-left:14px}}
.tl-yr{font-family:var(--mono);font-size:13px;color:var(--soft);padding-top:6px}
.tl-main h3{font-family:var(--display);font-weight:430;font-size:1.5rem;letter-spacing:-0.01em}
.tl-main h3 .co{color:var(--accent)}
.tl-main .role{font-family:var(--mono);font-size:12px;color:var(--soft);text-transform:uppercase;letter-spacing:0.08em;margin:6px 0 14px}
.tl-main p{color:#3a3830;font-size:15.5px;max-width:64ch}
.tl-tag{font-family:var(--mono);font-size:11px;color:var(--soft);text-align:right;padding-top:8px;white-space:nowrap}

.cases{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.case{border:1px solid var(--line);background:var(--paper);padding:40px 38px 36px;border-radius:4px;transition:border-color .25s ease,transform .25s ease;position:relative;overflow:hidden}
@media(hover:hover){.case:hover{border-color:var(--ink);transform:translateY(-3px)}}
.case:active{transform:scale(.99)}
.case .ctag{font-family:var(--mono);font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--accent)}
.case h3{font-family:var(--display);font-weight:420;font-size:1.7rem;margin:18px 0 8px;letter-spacing:-0.01em;line-height:1.1}
.case p{color:var(--soft);font-size:15px;margin-bottom:28px}
.case .stats{display:flex;gap:34px;border-top:1px solid var(--line);padding-top:22px}
.case .stat .v{font-family:var(--display);font-size:1.9rem;font-weight:400;letter-spacing:-0.02em;line-height:1}
.case .stat .k{font-family:var(--mono);font-size:11px;color:var(--soft);margin-top:8px;text-transform:uppercase;letter-spacing:0.06em}

.videos{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.video{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:4px;background:var(--paper);overflow:hidden;transition:border-color .25s ease,transform .25s ease}
@media(hover:hover){.video:hover{border-color:var(--ink);transform:translateY(-3px)}}
.video:active{transform:scale(.99)}
.video .thumb{aspect-ratio:16/9;background:linear-gradient(135deg,#1c1b14,#2a2920);display:flex;align-items:center;justify-content:center;position:relative}
.video .thumb .play{width:58px;height:58px;border-radius:50%;border:1.5px solid rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .25s}
@media(hover:hover){.video:hover .thumb .play{background:var(--accent);border-color:var(--accent);transform:scale(1.06)}}
.video .thumb .play svg{margin-left:3px}
.video .thumb .kind{position:absolute;top:14px;left:14px;font-family:var(--mono);font-size:10.5px;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.video .vbody{padding:24px 26px 26px;display:flex;flex-direction:column;flex:1}
.video h3{font-family:var(--display);font-weight:420;font-size:1.3rem;line-height:1.18;letter-spacing:-0.005em;margin-bottom:8px}
.video p{color:var(--soft);font-size:14.5px;margin-bottom:14px;flex:1}
.video .vmeta{font-family:var(--mono);font-size:11px;color:var(--soft);text-transform:uppercase;letter-spacing:0.06em;display:flex;gap:8px;align-items:center}
@media(hover:hover){.video:hover .vmeta{color:var(--accent)}}

.two-col{display:grid;grid-template-columns:1fr 1fr;gap:72px}
.col-head{font-family:var(--mono);font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--soft);padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:8px}
.entry{display:block;padding:22px 0;border-bottom:1px solid var(--line);transition:color .2s,padding-left .25s ease}
@media(hover:hover){.entry:hover{color:var(--accent);padding-left:8px}}
.entry:active{color:var(--accent)}
.entry .et{font-family:var(--display);font-size:1.2rem;font-weight:420;letter-spacing:-0.005em;line-height:1.25}
.entry .em{font-family:var(--mono);font-size:11.5px;color:var(--soft);margin-top:6px;text-transform:uppercase;letter-spacing:0.06em}
@media(hover:hover){.entry:hover .em{color:var(--accent)}}

.course-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:start}
.course-hero .badges{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:26px}
.badge{font-family:var(--mono);font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:var(--soft);border:1px solid var(--line);border-radius:100px;padding:7px 14px}
.badge.live{color:var(--accent);border-color:var(--accent)}
.course-hero h1{font-family:var(--display);font-weight:340;font-size:clamp(2.1rem,4.6vw,3.6rem);line-height:1.06;letter-spacing:-0.02em}
.course-hero .ch-lead{margin-top:22px;color:#36342c;font-size:18px;max-width:50ch}
.course-card{border:1px solid var(--line);border-radius:6px;background:var(--paper);padding:34px 32px;position:sticky;top:90px}
.course-card .price{font-family:var(--display);font-size:2.4rem;font-weight:400;letter-spacing:-0.02em}
.course-card .price small{font-family:var(--mono);font-size:13px;color:var(--soft);letter-spacing:0;font-weight:400;display:block;margin-top:4px}
.course-card .crow{display:flex;justify-content:space-between;padding:14px 0;border-top:1px solid var(--line);font-size:14.5px;gap:16px}
.course-card .crow:first-of-type{margin-top:24px}
.course-card .crow .k{color:var(--soft)}
.course-card .crow .v{font-weight:500;text-align:right}
.course-card .cbtn{margin-top:24px;width:100%;justify-content:center}
.course-card .note{font-family:var(--mono);font-size:10.5px;color:var(--soft);text-align:center;margin-top:14px;line-height:1.5}

.modules{display:flex;flex-direction:column}
.module{display:grid;grid-template-columns:88px 1fr;gap:32px;padding:34px 0;border-top:1px solid var(--line);transition:padding-left .35s ease}
@media(hover:hover){.module:hover{padding-left:12px}}
.module .mn{font-family:var(--mono);font-size:12px;color:var(--accent);padding-top:6px}
.module h3{font-family:var(--display);font-weight:420;font-size:1.45rem;letter-spacing:-0.01em;margin-bottom:14px}
.module ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.module li{position:relative;padding-left:22px;color:#3a3830;font-size:15.5px}
.module li::before{content:"—";position:absolute;left:0;color:var(--accent)}

.whofor{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.who{background:var(--paper);padding:36px 32px}
.who .wn{font-family:var(--mono);font-size:12px;color:var(--accent);display:block;margin-bottom:16px}
.who h3{font-family:var(--display);font-weight:420;font-size:1.3rem;margin-bottom:10px;letter-spacing:-0.01em}
.who p{color:var(--soft);font-size:14.5px}

.mobile-enroll{display:none}

.advisory{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.advisory .lead{font-family:var(--display);font-weight:340;font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.28;letter-spacing:-0.01em}
.advisory ul{list-style:none;display:flex;flex-direction:column;gap:2px}
.advisory li{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);align-items:baseline}
.advisory li .ix{font-family:var(--mono);font-size:11px;color:var(--accent)}
.advisory li span.t{font-size:16px}
.advisory li p{color:var(--soft);font-size:14px;margin-top:2px}

.cbtn{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--ink);border-radius:100px;padding:14px 26px;font-family:var(--mono);font-size:13px;letter-spacing:0.03em;transition:background .2s,color .2s,transform .12s ease;cursor:pointer;min-height:48px}
.cbtn .ar{transition:transform .2s}
@media(hover:hover){.cbtn:hover{background:var(--ink);color:var(--paper)}.cbtn:hover .ar{transform:translate(3px,-3px)}}
.cbtn:active{transform:scale(.96)}
.cbtn.solid{background:var(--accent);border-color:var(--accent);color:#fff}
@media(hover:hover){.cbtn.solid:hover{background:var(--accent-d);border-color:var(--accent-d)}}

.contact-block{padding:120px 0 110px}
.contact-block .big{font-family:var(--display);font-weight:330;font-size:clamp(2.2rem,5.4vw,4.6rem);line-height:1.04;letter-spacing:-0.02em;max-width:14ch;margin-bottom:46px}
.contact-block .big em{font-style:italic;color:var(--accent)}
.contact-grid{display:flex;flex-wrap:wrap;gap:18px}

.cta-strip{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;border:1px solid var(--line);border-radius:6px;padding:38px 40px;background:var(--paper-d)}
.cta-strip .ct-txt h3{font-family:var(--display);font-weight:420;font-size:1.6rem;letter-spacing:-0.01em}
.cta-strip .ct-txt p{color:var(--soft);font-size:15px;margin-top:6px;max-width:48ch}

footer{border-top:1px solid var(--line);padding:54px 0 42px}
.foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:42px;border-bottom:1px solid var(--line)}
.foot-top .fbrand{font-family:var(--display);font-size:1.5rem;font-weight:400;letter-spacing:-0.01em}
.foot-top .fbrand p{font-family:var(--body);font-size:14.5px;color:var(--soft);margin-top:12px;max-width:34ch}
.foot-col h4{font-family:var(--mono);font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--soft);margin-bottom:16px}
.foot-col a{display:block;font-size:14.5px;color:var(--ink);padding:7px 0;transition:color .2s}
@media(hover:hover){.foot-col a:hover{color:var(--accent)}}
.foot-col a:active{color:var(--accent)}
.foot-bot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;padding-top:28px}
.foot-bot p{font-family:var(--mono);font-size:11.5px;color:var(--soft);letter-spacing:0.04em}

a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}

@media(max-width:900px){
  .navlinks{display:none}
  .menu-btn{display:flex}
  .manifesto,.two-col,.advisory,.course-hero{grid-template-columns:1fr;gap:44px}
  .principles,.cases,.videos,.indexnav,.whofor{grid-template-columns:1fr}
  .hero-grid{grid-template-columns:1fr;gap:36px}
  .hero-portrait{max-width:340px}
  .hero-portrait img,.hero-portrait .portrait-ph{aspect-ratio:3/2}
  .course-card{position:static}
  .tl-row{grid-template-columns:74px 1fr;gap:18px}
  .tl-tag{display:none}
  .module{grid-template-columns:54px 1fr;gap:16px}
  .foot-top{grid-template-columns:1fr 1fr;gap:32px}
  .foot-top .fbrand{grid-column:1/-1}
  section{padding:74px 0}
  .hero{padding:128px 0 64px}
  .page-intro{padding:120px 0 0}
  .contact-block{padding:104px 0 88px}
}
@media(max-width:600px){
  .wrap{padding:0 20px}
  body{font-size:16px}
  .sec-head{margin-bottom:38px;gap:12px}
  .hero-meta{gap:26px;margin-top:44px}
  .hero-meta .blk{min-width:100%}
  .case{padding:30px 26px 28px}
  .case .stats{gap:22px}
  .case .stat .v{font-size:1.6rem}
  .principle{padding:34px 28px}
  .video .vbody{padding:22px 22px 24px}
  .cta-strip{padding:30px 26px;gap:22px}
  .cta-strip .cbtn{width:100%;justify-content:center}
  .contact-grid{flex-direction:column}
  .contact-grid .cbtn{width:100%;justify-content:center}
  .foot-top{grid-template-columns:1fr;gap:28px}
  .page-intro .sub{font-size:16.5px}
  .course-hero .ch-lead{font-size:16.5px}
  .course-page .mobile-enroll{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;align-items:center;justify-content:space-between;gap:14px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--paper) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line)}
  .course-page .mobile-enroll .me-price{font-family:var(--display);font-size:1.3rem;font-weight:400}
  .course-page .mobile-enroll .me-price small{display:block;font-family:var(--mono);font-size:10px;color:var(--soft)}
  .course-page .mobile-enroll .cbtn{padding:13px 22px;min-height:46px}
  .course-page{padding-bottom:84px}
}
@media(prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  .thesis .reveal > span{transform:none}
  .hero-meta,.hero-portrait,.reveal-up,.drawer .dlinks a{opacity:1;transform:none}
}

/* ===== Seletor de idioma + skip link (tema WP) ===== */
.lang-switch{display:inline-flex;gap:6px;align-items:center;margin-left:10px;font-family:var(--mono);font-size:11.5px;letter-spacing:0.04em}
.lang-switch a{color:var(--soft);padding:4px 5px;border-radius:3px}
.lang-switch a.on{color:var(--accent)}
@media(hover:hover){.lang-switch a:hover{color:var(--ink)}}
.drawer .dfoot{flex-wrap:wrap;align-items:center}
.drawer .dfoot .lang-switch{margin-left:0;width:100%;margin-bottom:6px;font-size:13px}
.drawer .dfoot .lang-switch a{padding:6px 8px}
.ds-skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--paper);padding:10px 16px;z-index:100;font-family:var(--mono);font-size:12px}
.ds-skip:focus{left:8px;top:8px}

/* ===== Integração Elementor: neutraliza espaçamentos padrão (mantém o design) ===== */
main .elementor-section{padding:0 !important}
main .elementor-container{max-width:none !important}
main .elementor-row{width:100%}
main .elementor-column-gap-default>.elementor-column>.elementor-element-populated,
main .elementor-widget-wrap{padding:0}
main .elementor-element{--widgets-spacing:0px}
main .elementor-widget:not(:last-child){margin-bottom:0}
main .elementor-widget-html .elementor-widget-container{margin:0}
main .elementor-widget-html section{width:100%}
