/* =========================================================
   ALEMÃO COM RENATA — identidade inspirada nos anexos
   ========================================================= */
:root{
  --orange:#C65314;
  --orange-2:#C65314;
  --terracotta:#BE6837;
  --pink:#BE6837;
  --pink-soft:#F4EFE9;
  --cream:#F4EFE9;
  --paper:#F4EFE9;
  --ink:#2B211B;
  --muted:#6F6257;
  --green:#BE6837;
  --gold:#C65314;
  --white:#FFFDF9;
  --line:rgba(43,33,27,.14);
  --serif:"Playfair Display",Georgia,serif;
  --sans:"DM Sans","Montserrat",Arial,sans-serif;
  --shadow:0 25px 60px rgba(47,37,24,.15);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}
body.menu-open{overflow:hidden}
a{text-decoration:none;color:inherit}
button,input,textarea{font:inherit}
button{cursor:pointer}
::selection{background:var(--orange);color:#fff}
.container{width:min(1180px,calc(100% - 72px));margin:auto}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:var(--serif)}
h1{font-size:clamp(60px,8vw,112px);line-height:.89;letter-spacing:-.06em;margin:18px 0 28px}
h2{font-size:clamp(40px,5vw,68px);line-height:.98;letter-spacing:-.045em}
h3{line-height:1.12}
.eyebrow{display:inline-flex;gap:11px;align-items:center;text-transform:uppercase;letter-spacing:.22em;font-size:10px;font-weight:700;color:var(--orange)}
.eyebrow:before{content:"";width:25px;height:1px;background:currentColor}
.eyebrow.light{color:#F4EFE9}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}
.reveal.visible{opacity:1;transform:none}

/* HEADER */
.site-header{position:fixed;z-index:100;top:0;width:100%;padding:16px 0;transition:.35s;background:rgba(244,239,233,.78);backdrop-filter:blur(15px)}
.site-header.scrolled{background:rgba(244,239,233,.96);box-shadow:0 8px 30px rgba(43,33,27,.08)}
.nav-wrap{display:flex;justify-content:space-between;align-items:center}
.brand img{width:150px;height:auto;display:block}
.main-nav{display:flex;align-items:center;gap:24px;font-size:12px}
.main-nav a{position:relative}
.main-nav a:not(.nav-cta):after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:1px;background:var(--orange);transition:.25s}
.main-nav a:hover:after{width:100%}
.nav-cta{border:1px solid var(--ink);padding:10px 16px;border-radius:999px}
.nav-cta:hover{background:var(--ink);color:#fff}
.menu-toggle{display:none;border:0;background:none}
.menu-toggle span{display:block;width:25px;height:1px;background:var(--ink);margin:5px}

/* HERO */
.hero{min-height:100vh;position:relative;display:flex;align-items:center;overflow:hidden;padding:125px 0 70px;background:#F4EFE9}
.hero-bg{position:absolute;inset:0;background:
  radial-gradient(circle at 72% 20%,rgba(190,104,55,.16),transparent 20%),
  radial-gradient(circle at 90% 85%,rgba(198,83,20,.10),transparent 24%),
  linear-gradient(115deg,#F4EFE9 0%,#F4EFE9 55%,#EAD8C9 100%);z-index:0}
.hero-glow{position:absolute;width:620px;height:620px;border-radius:50%;right:-250px;top:-220px;border:1px solid rgba(198,83,20,.14)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}
.hero-copy{max-width:680px}
.hero-copy h1 em{color:var(--orange);font-weight:500}
.hero-lead{font-size:20px;line-height:1.55;max-width:620px;color:#3A2D25}
.hero-sub{font-size:14px;line-height:1.7;max-width:580px;color:#75665A}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 23px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:50px;padding:13px 22px;border-radius:999px;border:1px solid var(--ink);font-size:12px;font-weight:700;transition:.25s}
.button:hover{transform:translateY(-3px);box-shadow:0 13px 28px rgba(43,33,27,.15)}
.button-red{background:var(--orange);color:#fff;border-color:var(--orange)}
.button-outline{background:transparent}
.button-dark{background:var(--ink);color:#fff}
.hero-proof{display:flex;align-items:center;gap:10px;color:#837064;font-size:11px}
.hero-proof span{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 7px rgba(198,83,20,.12)}
.hero-visual{height:610px;position:relative;display:grid;place-items:center}
.hero-photo{width:min(430px,75vw);aspect-ratio:4/5;border-radius:48% 48% 21px 21px;overflow:hidden;position:relative;z-index:2;box-shadow:0 30px 65px rgba(43,33,27,.18);transform:rotate(2deg)}
.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(27,24,19,.15),transparent 45%)}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.photo-orbit{position:absolute;border:1px solid rgba(198,83,20,.48);border-radius:48% 52% 44% 56%;width:455px;height:565px}
.orbit-a{transform:rotate(-9deg)}
.orbit-b{width:480px;height:500px;border-color:rgba(198,83,20,.28);transform:rotate(10deg)}
.floating-tag{position:absolute;z-index:4;padding:8px 13px;border-radius:999px;border:1px solid rgba(43,33,27,.14);background:rgba(255,253,248,.86);backdrop-filter:blur(8px);font:italic 17px var(--serif);box-shadow:0 10px 25px rgba(43,33,27,.08);animation:float 4s ease-in-out infinite}
.tag-a{top:14%;left:3%;color:var(--green)}
.tag-b{right:0;top:42%;color:var(--orange);animation-delay:-1.3s}
.tag-c{bottom:12%;left:10%;color:#BE6837;animation-delay:-2.2s}
.hero-stamp{position:absolute;z-index:5;right:4%;bottom:8%;width:112px;height:112px;border-radius:50%;background:var(--white);border:1px solid var(--gold);display:flex;align-items:center;justify-content:center;gap:5px;box-shadow:0 18px 35px rgba(43,33,27,.14);transform:rotate(-7deg)}
.hero-stamp:after{content:"";position:absolute;inset:7px;border:1px dashed var(--gold);border-radius:50%}
.hero-stamp strong{font:italic 28px var(--serif);color:var(--orange)}
.hero-stamp small{text-transform:uppercase;letter-spacing:.08em;font-size:6px;text-align:center;color:#7B6658}
.scroll-cue{position:absolute;z-index:3;bottom:20px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#8C786A}
.scroll-cue span{font-size:16px;margin-left:7px}

/* FORMATOS / SEGUNDA PÁGINA */
.formats{position:relative;overflow:hidden;padding:100px 0 120px;background:var(--paper)}
.paper-lines{position:absolute;inset:0;background:repeating-linear-gradient(to bottom,transparent 0,transparent 43px,rgba(190,104,55,.10) 44px);pointer-events:none}
.formats:after{content:"DEUTSCH";position:absolute;right:-70px;bottom:-55px;font:700 15vw var(--sans);letter-spacing:-.08em;color:rgba(198,83,20,.035);pointer-events:none}
.formats-head{position:relative;z-index:2;text-align:center}
.formats-head h2{margin:16px auto 14px}
.formats-head p{color:var(--muted);font-size:14px}
.pinboard{position:relative;z-index:2;max-width:1080px;min-height:630px;margin:45px auto 0}
.pin-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.pin-lines path{fill:none;stroke:#8C786A;stroke-width:1.4;stroke-dasharray:6 7;opacity:.75;transition:.5s}
.pinboard:has(.note-card:hover) .pin-lines path{stroke:var(--orange);stroke-dasharray:3 7}
.note-card{--bg:#F4EFE9;position:absolute;width:315px;min-height:235px;padding:33px 28px 25px;background:var(--bg);border:1px solid rgba(190,104,55,.30);border-radius:18px;box-shadow:0 22px 38px rgba(75,47,30,.12);transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s,background .3s;cursor:pointer;outline:none}
.note-card:hover,.note-card:focus,.note-card.active{transform:translateY(-14px) rotate(0) scale(1.035)!important;box-shadow:0 32px 55px rgba(75,47,30,.18);z-index:8}
.note-one{left:1%;top:15px;transform:rotate(-3deg)}
.note-two{right:2%;top:140px;transform:rotate(2.5deg);--bg:#F4EFE9}
.note-three{left:9%;bottom:0;transform:rotate(-1.8deg);--bg:#F4EFE9}
.pin{position:absolute;top:-13px;left:50%;transform:translateX(-50%);width:13px;height:26px;border-radius:5px 5px 8px 8px;box-shadow:0 4px 4px rgba(0,0,0,.22)}
.pin-gold{background:#C65314}.pin-red{background:#C65314}.pin-green{background:#BE6837}
.pin:after{content:"";position:absolute;left:5px;bottom:-2px;border:2px solid transparent;border-top-color:rgba(0,0,0,.28)}
.note-number{display:block;text-align:center;font:italic 29px var(--serif);color:#C65314;margin-bottom:9px}
.note-two .note-number{color:var(--orange)}.note-three .note-number{color:var(--green)}
.note-card h3{text-align:center;font-size:18px;margin-bottom:10px}
.note-card p{text-align:center;color:#6F6257;font-size:12px;line-height:1.65;margin-bottom:0}
.note-reveal{max-height:0;opacity:0;overflow:hidden;text-align:center;color:#514238;font-size:12px;line-height:1.6;transition:max-height .45s ease,opacity .35s,margin .35s}
.note-card:hover .note-reveal,.note-card:focus .note-reveal,.note-card.active .note-reveal{max-height:120px;opacity:1;margin-top:14px}
.note-action{display:block;text-align:center;margin-top:14px;font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#8A7464}
.formats-foot{text-align:center;position:relative;z-index:2;color:#8C786A;font-size:9px;letter-spacing:.15em;text-transform:uppercase}.formats-foot span{font-size:14px;margin-left:6px}

/* ABOUT */
.section{padding:115px 0}
.about{background:#F4EFE9}
.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px;align-items:center}
.about-image{position:relative}
.image-frame{width:min(470px,100%);aspect-ratio:4/5;border-radius:22px;overflow:visible;position:relative}
.image-frame:before{content:"";position:absolute;inset:-12px 16px 16px -12px;border:1px solid rgba(198,83,20,.35);border-radius:24px;transform:rotate(-4deg)}
.image-frame img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover;border-radius:20px;object-position:center 30%;box-shadow:var(--shadow)}
.image-badge{position:absolute;z-index:4;right:-18px;top:-17px;width:116px;height:116px;border-radius:50%;background:var(--white);border:1px solid var(--gold);display:grid;place-content:center;text-align:center;transform:rotate(5deg);box-shadow:0 15px 35px rgba(43,33,27,.14)}
.image-badge:after{content:"";position:absolute;inset:8px;border:1px dashed var(--gold);border-radius:50%}
.image-badge strong{font:italic 28px var(--serif);color:#C65314}.image-badge span{font-size:7px;letter-spacing:.1em;text-transform:uppercase;color:#7B6658}
.about-copy h2{margin:15px 0 24px}.about-copy h2 em{color:var(--orange);font-weight:500}
.about-list{list-style:none;padding:0;margin:0 0 30px;display:grid;gap:14px}
.about-list li{position:relative;padding-left:24px;color:#625348;font-size:14px;line-height:1.55}
.about-list li:before{content:"✓";position:absolute;left:0;color:var(--orange);font-weight:700}
.about-copy blockquote{margin:0;border-left:2px solid var(--gold);padding:4px 0 4px 20px;font:italic 19px/1.65 var(--serif);color:#3A2D25}

/* RESULTS */
.results{padding:95px 0;background:var(--green);color:#F4EFE9}
.results-top h2{margin:15px 0 40px}.results-top h2 em{color:#F4EFE9;font-weight:500}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;border-top:1px solid rgba(244,239,233,.24);border-bottom:1px solid rgba(244,239,233,.24)}
.stat{padding:30px 20px 30px 0;border-right:1px solid rgba(244,239,233,.24)}
.stat:last-child{border-right:0}
.stat strong{display:block;font:italic 33px var(--serif);color:#F4EFE9;margin-bottom:5px}.stat span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#E8DCD2}
.results-text{max-width:820px;margin:35px 0 0;font-size:18px;line-height:1.7;color:#E8DCD2}

/* METHOD */
.method{background:#F4EFE9}
.method-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}
.method-intro h2{margin:16px 0}.method-intro h2 em{color:var(--orange);font-weight:500}.method-intro>p{max-width:470px;color:#6F6257;line-height:1.7}
.method-items{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}
.method-items article{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:20px 0;border-top:1px solid var(--line)}
.method-items article b{width:27px;height:27px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font-size:8px;color:#C65314}
.method-items h3{font:600 17px var(--sans);margin:0 0 5px}.method-items p{font-size:11px;line-height:1.65;color:#6F6257;margin:0}

/* CERT */
.certifications{padding:110px 0;background:linear-gradient(135deg,#BE6837,#8F4C2A);color:#fff;position:relative;overflow:hidden}
.certifications:after{content:"GOETHE";position:absolute;right:-40px;bottom:-75px;font:600 18vw var(--serif);color:rgba(244,239,233,.08)}
.cert-content{position:relative;z-index:2;text-align:center}.cert-content h2{margin:15px 0}.cert-content h2 em{color:#C65314;font-weight:500}.cert-content>p{color:#F4EFE9;line-height:1.65;margin-bottom:38px}
.levels{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}
.level{width:93px;height:93px;border-radius:50%;border:7px solid var(--white);background:var(--white);color:#2B211B;position:relative;font:italic 22px var(--serif);box-shadow:0 14px 30px rgba(0,0,0,.2);transition:.3s}
.level:after{content:"";position:absolute;inset:6px;border:1px dashed #C28B67;border-radius:50%}
.level:nth-child(2),.level:nth-child(4){color:var(--orange)}.level:nth-child(3),.level:nth-child(6){color:#C65314}
.level:hover,.level.active{transform:translateY(-10px) rotate(-4deg) scale(1.08)}
.level-info{min-height:72px;max-width:620px;margin:23px auto 0}.level-info strong{display:block;font:24px var(--serif);margin-bottom:5px}.level-info span{font-size:12px;color:#F4EFE9}

/* FAQ */
.faq{background:var(--paper)}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-intro h2{margin:15px 0}.faq-intro h2 em{color:var(--orange);font-weight:500}.faq-intro p{color:#6F6257;line-height:1.7;max-width:450px}
.accordion{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;position:relative;padding:22px 45px 22px 0;font:600 18px var(--serif)}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";position:absolute;right:0;top:17px;font:300 27px var(--sans);color:var(--orange);transition:.25s}
details[open] summary:after{transform:rotate(45deg)}
details p{margin:0;padding:0 0 23px;color:#6F6257;font-size:13px;line-height:1.7;max-width:720px}

/* TESTIMONIALS */
.testimonials{background:#F4EFE9;overflow:hidden}.test-head{display:flex;justify-content:space-between;gap:30px;align-items:flex-end}.test-head h2{margin:15px 0}.test-head h2 em{color:var(--orange);font-weight:500}.test-head p{color:#75665A;font-size:14px;max-width:680px}
.drag-label{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#8C786A;white-space:nowrap;padding-bottom:7px}
.testimonial-wrap{overflow:hidden;margin-top:42px;cursor:grab}.testimonial-wrap.dragging{cursor:grabbing}
.testimonial-rail{display:flex;gap:18px;width:max-content;padding:10px 4px 38px;will-change:transform}
.test-card{width:365px;min-height:315px;flex:0 0 auto;background:rgba(255,253,248,.96);border:1px solid rgba(37,35,31,.09);border-radius:22px;padding:25px;box-shadow:0 16px 35px rgba(51,42,29,.09);transition:.3s}
.test-card:nth-child(2n){transform:rotate(-1.4deg);margin-top:18px}.test-card:nth-child(3n){transform:rotate(1.1deg)}
.test-card:hover{transform:translateY(-9px) rotate(0);box-shadow:0 27px 52px rgba(51,42,29,.15)}
.whatsapp-label { display:none !important; }
.test-card blockquote{font:17px/1.58 var(--serif);color:#3A2D25;margin:19px 0 24px}
.student{border-top:1px solid var(--line);padding-top:15px;display:flex;gap:10px;align-items:center}.student>span{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#fff;font-size:18px}.test-card:nth-child(2n) .student>span{background:#BE6837}.test-card:nth-child(3n) .student>span{background:var(--green)}
.student strong{display:block;font-size:12px}.student small{display:block;color:#8A7464;font-size:9px;margin-top:3px}

/* CTA */
.cta{padding:105px 0;background:var(--orange);color:#fff}.cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start}.cta h2{margin:15px 0;color:#fff}.cta h2 em{color:#F4EFE9;font-weight:500}.cta-copy>p{color:#F4EFE9;line-height:1.75;max-width:540px}.direct-links{display:flex;flex-direction:column;gap:11px;margin-top:25px;font-size:12px}.direct-links a{text-decoration:underline;text-underline-offset:4px}.contact-form{background:var(--white);color:var(--ink);padding:29px;border-radius:22px;box-shadow:var(--shadow)}.contact-form label{display:block;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#6F6257;margin-bottom:6px}.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(43,33,27,.14);background:#F4EFE9;border-radius:11px;padding:12px 13px;outline:none;margin-bottom:15px;transition:.2s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(198,83,20,.11)}.contact-form .button{width:100%;border:0}.form-status{font-size:11px;color:var(--green);min-height:17px;margin:9px 0 0}

/* FOOTER */
.footer{background:#2B211B;color:#F4EFE9;padding:65px 0 20px}.footer-grid{display:grid;grid-template-columns:1.15fr .7fr .95fr;gap:65px;padding-bottom:45px}.footer-brand img{width:170px;opacity:.95}.footer-logo{filter:none}.footer-brand p{max-width:350px;color:#CBBBAE;font-size:12px;line-height:1.75;margin:20px 0}.footer h4{font-size:9px;text-transform:uppercase;letter-spacing:.18em;color:#F4EFE9;margin:4px 0 19px}.footer-links,.footer-contact{display:flex;flex-direction:column;gap:11px;font-size:12px}.footer-links a,.footer-contact a{transition:.2s}.footer-links a:hover,.footer-contact a:hover{color:#fff;transform:translateX(3px)}.footer-contact span{line-height:1.6;color:#CBBBAE}.footer-bottom{border-top:1px solid rgba(244,239,233,.18);padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:#9D8C7E;font-size:9px}
.floating-whatsapp{position:fixed;z-index:110;right:23px;bottom:21px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--orange);color:#fff;font-size:25px;box-shadow:0 15px 30px rgba(0,0,0,.2);transition:.25s}.floating-whatsapp:before{content:"";position:absolute;inset:-5px;border:1px solid rgba(198,83,20,.4);border-radius:50%;animation:pulse 2.2s infinite}.floating-whatsapp:hover{transform:translateY(-5px) scale(1.05)}
@keyframes float{50%{transform:translateY(-8px) rotate(-2deg)}}@keyframes pulse{0%,100%{transform:scale(1);opacity:.5}50%{transform:scale(1.18);opacity:0}}

/* RESPONSIVE */
@media(max-width:930px){
  .container{width:min(100% - 38px,700px)}
  .menu-toggle{display:block}
  .main-nav{position:absolute;top:69px;left:19px;right:19px;display:none;flex-direction:column;align-items:stretch;padding:16px;background:rgba(251,247,239,.98);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
  .main-nav.open{display:flex}.main-nav a{padding:10px 5px}.nav-cta{text-align:center}
  .hero-grid,.about-grid,.method-grid,.faq-grid,.cta-grid{grid-template-columns:1fr;gap:55px}.hero{padding-top:105px}.hero-copy{max-width:680px}.hero-visual{height:500px}.hero-photo{width:355px}.photo-orbit{width:380px;height:460px}.orbit-b{width:400px;height:420px}.hero-stamp{right:8%}
  .pinboard{min-height:790px}.note-one{left:0}.note-two{right:0;top:280px}.note-three{left:10%;bottom:10px}
  .method-items{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}
}
@media(max-width:620px){
  .container{width:calc(100% - 30px)}h1{font-size:58px}.section{padding:82px 0}
  .hero{padding-top:100px}.hero-lead{font-size:17px}.hero-sub{font-size:13px}.hero-visual{height:420px}.hero-photo{width:300px}.photo-orbit{width:315px;height:390px}.orbit-b{width:335px;height:355px}.hero-stamp{width:90px;height:90px;right:0}.hero-stamp strong{font-size:23px}.hero-stamp small{font-size:5px}.floating-tag{font-size:13px}.tag-a{left:0}.tag-b{right:0}
  .formats{padding:78px 0 90px}.pinboard{min-height:1000px}.pin-lines{display:none}.note-card{position:absolute!important;width:min(315px,90vw)}.note-one{left:50%;top:5px;transform:translateX(-50%) rotate(-2deg)}.note-two{left:50%;right:auto;top:350px;transform:translateX(-50%) rotate(2deg)}.note-three{left:50%;bottom:15px;transform:translateX(-50%) rotate(-1deg)}
  .stats{grid-template-columns:1fr 1fr}.stat{border-right:0;border-bottom:1px solid rgba(244,239,233,.24);padding:22px 8px}.stat:nth-child(odd){border-right:1px solid rgba(244,239,233,.24)}
  .levels{gap:10px}.level{width:77px;height:77px;font-size:19px;border-width:6px}
  .test-head{display:block}.drag-label{margin-top:10px}.test-card{width:300px}.test-card blockquote{font-size:15px}
  .footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column}.floating-whatsapp{right:15px;bottom:15px;width:54px;height:54px}
}


/* Ícone oficial do WhatsApp no botão flutuante */
.whatsapp-float svg { width: 25px; height: 25px; display: block; fill: currentColor; }
.whatsapp-float { display: flex; align-items: center; justify-content: center; }
