:root{
  --color-accent:#D6236F;--color-highlight:#F5B921;--color-culture:#2E7D5B;--color-white:#FFFFFF;--color-paper-raised:#EEE5F0;--color-ink-muted:#685477;--color-control-line:#947C9F;--color-accent-strong:#B71D5E;--color-rule:rgb(58 30 92 / .12);
  --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:5rem;--space-10:6rem;--space-11:7.5rem;--space-12:10rem;
  --type-section:clamp(2rem,3.5vw,3rem);--type-subheading:clamp(1.3125rem,2vw,1.5rem);--type-word:clamp(3rem,8vw,7rem);--type-quote:clamp(1.5625rem,2.5vw,2.125rem);--type-intro:clamp(1.125rem,1.5vw,1.25rem);--type-small:clamp(.9375rem,1.2vw,1rem);
  --copy-max:62ch;--intro-max:48ch;--radius-field:.375rem;--radius-action:9999px;--radius-photo:0;--radius-floating:9999px;--control-height:3.25rem;--touch-target:2.75rem;--border-thin:1px;--focus-width:3px;--focus-offset:4px;--grid-gap:clamp(1.5rem,4vw,3rem);--motion-flip:420ms;--motion-reveal:560ms;--motion-easing:cubic-bezier(.76,0,.24,1);--color-whatsapp:#187A42;--color-youtube:#C62828;--color-grid:rgb(58 30 92 / .045);--layer-content:0;--layer-controls:10;--layer-floating:20;
  --line-height-body:1.65;--line-height-intro:1.55;--line-height-section:1.16;--line-height-control:1.35;--line-height-small:1.5;--weight-normal:400;--weight-display:500;--weight-strong:600;--portrait-hero-width:22.5rem;--portrait-teacher-width:20rem;
}
html{scroll-padding-block-start:var(--space-5);scrollbar-color:var(--color-control-line) var(--color-paper)}body{line-height:var(--line-height-body);caret-color:var(--color-accent-strong)}::selection{background:var(--color-ink);color:var(--color-paper)}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:var(--focus-width) solid var(--color-ink);outline-offset:var(--focus-offset)}button{cursor:pointer}button:disabled{cursor:default;opacity:.65}a{text-decoration-thickness:var(--border-thin);text-underline-offset:.22em}a:hover{color:var(--color-accent-strong)}h2,h3,p,figure,blockquote,dl,dd{margin:0}h2{font:var(--weight-display) var(--type-section)/var(--line-height-section) var(--font-display);letter-spacing:-.02em;max-width:25ch;text-wrap:balance}h3{font:var(--weight-strong) var(--type-subheading)/1.3 var(--font-body);text-wrap:balance}p{max-width:var(--copy-max)}p+p{margin-top:var(--space-5)}.intro{font-size:var(--type-intro);line-height:var(--line-height-intro)}.muted{color:var(--color-ink-muted)}.icon{width:1.5rem;height:1.5rem;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:fixed;top:var(--space-3);left:var(--space-3);background:var(--color-ink);color:var(--color-white);padding:var(--space-3) var(--space-5);z-index:30;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0);color:var(--color-white);outline-color:var(--color-accent)}
.section{--section-top:2rem;--section-bottom:2.5rem;padding-block:var(--section-top) var(--section-bottom)}
.hero{--section-top:1rem;--section-bottom:1.5rem;overflow:clip}
.culture{--section-top:3rem;--section-bottom:3.5rem}
.contact{--section-top:2.5rem;--section-bottom:3rem}
.site-header{padding-block:var(--space-5)}.header-inner{gap:var(--space-4);row-gap:var(--space-3)}.brand{text-decoration:none;flex:none}.main-nav{order:3;display:flex;justify-content:space-between;gap:var(--space-5);width:100%;font-size:1rem}.main-nav a{display:flex;align-items:center;min-height:var(--touch-target);text-decoration:none}.main-nav a:hover{text-decoration:underline}.language-switch{display:flex;gap:var(--space-1);margin-left:auto;align-items:center}.language-switch button{display:grid;place-items:center;min-width:var(--touch-target);min-height:var(--touch-target);padding:var(--space-2);border:0;border-radius:var(--radius-field);background:transparent;color:var(--color-ink);font-size:.875rem}.language-switch button[aria-pressed=true]{background:var(--color-white);font-weight:var(--weight-strong)}.language-switch button:hover{color:var(--color-accent-strong)}
.button{--button-bg:var(--color-accent);--button-fg:var(--color-white);--button-border:var(--color-accent);--button-hover-bg:var(--color-accent-strong);--button-hover-fg:var(--color-white);display:inline-flex;justify-content:center;align-items:center;gap:var(--space-3);min-height:var(--control-height);max-width:100%;padding:var(--space-4) var(--space-5);border:1px solid var(--button-border);border-radius:var(--radius-action);background:var(--button-bg);color:var(--button-fg);font-size:1rem;line-height:var(--line-height-control);font-weight:var(--weight-strong);text-align:center;text-decoration:none}
.button-primary{--button-bg:var(--color-accent);--button-border:var(--color-accent)}
.button-secondary{--button-bg:var(--color-white);--button-fg:var(--color-ink);--button-border:var(--color-ink);--button-hover-bg:var(--color-ink)}
.button:hover,.button:active,.button:focus-visible{color:var(--button-fg);text-decoration:none}
.button:not(.button-flip):not(.contact-capsule):not(:disabled):is(:hover,:active,:focus-visible){background:var(--button-hover-bg);color:var(--button-hover-fg)}
.button>.icon{position:relative;z-index:1}

.hero-layout{display:grid;gap:var(--space-5)}.hero-heading{position:relative;isolation:isolate;max-width:42rem;font-size:var(--type-hero)}.hero-heading h1{position:relative;z-index:1;max-width:19ch}.hero-description{font-size:var(--type-intro);line-height:var(--line-height-intro);max-width:46ch}.hero-actions{display:flex;align-items:stretch;flex-direction:column;gap:var(--space-3);width:min(100%,24rem)}.hero-actions>.button{width:100%}.hero-note{font-size:var(--type-small);color:var(--color-ink-muted);max-width:39ch}.hero-portrait{width:min(100%,var(--portrait-hero-width));margin-left:auto;margin-top:var(--space-5)}.hero-portrait picture{display:block}.hero-portrait img{width:100%;border-radius:var(--radius-photo)}.hero-portrait figcaption{display:flex;flex-direction:column;gap:0;padding-top:var(--space-5);margin-left:var(--space-6);font-size:var(--type-small);line-height:var(--line-height-small)}.hero-portrait figcaption span:first-child{font-weight:var(--weight-strong)}.hero-portrait figcaption span:last-child{color:var(--color-ink-muted)}
.split-layout{display:grid;gap:var(--space-6)}.audience-copy{padding-left:var(--space-5)}.situations{list-style:none;margin:0 0 var(--space-5);padding:0}.situations li{padding-block:var(--space-4);font-size:var(--type-intro);line-height:var(--line-height-intro)}.situations li:first-child{padding-top:0}.audience-copy>.muted{font-size:var(--type-small)}
.teacher-layout{display:grid;gap:var(--space-6)}.teacher-portrait{width:min(100%,var(--portrait-teacher-width));align-self:end}.teacher-portrait img{width:100%;border-radius:var(--radius-photo)}.teacher-copy>.button{margin-top:var(--space-5)}.process-intro>p{margin-top:var(--space-5)}.process-intro>.muted{font-size:var(--type-small)}.steps{list-style:none;counter-reset:steps;padding:0;margin:0;display:grid;gap:var(--space-6)}.steps li{display:grid;grid-template-columns:2rem 1fr;gap:var(--space-4);counter-increment:steps}.steps li::before{content:counter(steps);font:var(--weight-display) 2rem/1.1 var(--font-display);color:var(--color-ink-muted)}.steps p{margin-top:var(--space-2);color:var(--color-ink-muted)}
.culture{background:var(--color-culture);color:var(--color-paper);overflow:clip}.culture ::selection{background:var(--color-paper);color:var(--color-culture)}.culture :focus-visible{outline-color:var(--color-white)}.culture-intro{max-width:45rem}.culture-intro>p{max-width:47ch;margin-top:var(--space-5)}.words{display:grid;gap:var(--space-6);margin-top:var(--space-7)}.word{position:relative;max-width:100%;isolation:isolate}.word:nth-child(even){text-align:right;justify-self:end}.word dt{position:relative;width:fit-content;max-width:100%;font:var(--weight-display) var(--type-word)/1.04 var(--font-display);letter-spacing:-.03em}.word:nth-child(even) dt{margin-left:auto}.word dd{margin-top:var(--space-3);max-width:26ch;line-height:var(--line-height-intro);font-size:var(--type-intro)}.culture-close{margin-top:var(--space-7);text-align:center}.highlight{position:relative;isolation:isolate;display:inline-grid;place-items:center;padding:var(--space-3) var(--space-5);color:var(--color-ink);font-size:clamp(1.25rem,2.2vw,1.5rem);line-height:1.5}.highlight svg{position:absolute;inset:0;width:100%;height:100%;z-index:-1;fill:var(--color-highlight)}.culture-translation{margin:var(--space-5) auto 0;font-size:var(--type-small);max-width:32ch}
.learning{background-color:#FDFAFD;background-image:linear-gradient(var(--color-grid) 1px,transparent 1px),linear-gradient(90deg,var(--color-grid) 1px,transparent 1px);background-size:22px 22px;background-position:-1px -1px}
.learning h2{max-width:29ch}.learning-intro{margin-top:var(--space-5);color:var(--color-ink-muted)}.learning-list{display:grid;gap:var(--space-6);margin-top:var(--space-6)}.learning-list>div{display:grid;gap:var(--space-2)}.learning-list dt{font-size:var(--type-subheading);font-weight:var(--weight-strong)}.learning-list dd{color:var(--color-ink-muted);max-width:46ch}
.sample-intro{font-size:var(--type-small);color:var(--color-ink-muted);margin-top:var(--space-5);max-width:65ch}.testimonials{display:grid;gap:var(--space-7);margin-top:var(--space-6)}.testimonial blockquote{font:var(--weight-normal) var(--type-quote)/1.4 var(--font-display);max-width:40ch}.attribution{margin-top:var(--space-5);font-size:1rem;font-weight:var(--weight-strong)}.testimonial .muted{margin-top:var(--space-1);font-size:var(--type-small)}.testimonial-secondary blockquote{font-size:clamp(1.375rem,2vw,1.625rem)}
.faq .split-layout>div:first-child>p{margin-top:var(--space-5);max-width:26ch;color:var(--color-ink-muted)}.faq-list details{border-top:var(--border-thin) solid var(--color-rule);padding-block:var(--space-3)}.faq-list details:last-child{border-bottom:var(--border-thin) solid var(--color-rule)}summary{position:relative;list-style:none;cursor:pointer;min-height:var(--touch-target);display:flex;align-items:center;padding-block:var(--space-3);padding-right:var(--space-7);font-weight:var(--weight-strong);line-height:1.5}summary::-webkit-details-marker{display:none}summary::before,summary::after{content:"";position:absolute;right:var(--space-2);top:50%;width:var(--space-4);height:var(--border-thin);background:currentColor}summary::after{width:var(--border-thin);height:var(--space-4);right:calc(var(--space-2) + var(--space-2) - .5px);top:calc(50% - var(--space-2))}details[open]>summary::after{display:none}.faq-list details>p{padding-block:var(--space-2) var(--space-5);font-size:1rem;color:var(--color-ink-muted)}.faq-list details>.button{margin-bottom:var(--space-4)}
.contact{position:relative}.contact-heading{text-align:center;max-width:50rem;margin-inline:auto;margin-bottom:var(--space-6)}.contact-heading h2{margin-inline:auto;max-width:26ch}.contact-heading p{margin:var(--space-5) auto 0;max-width:47ch}.contact-layout{display:grid;gap:var(--space-7)}.contact-direct .button{margin-top:var(--space-5);width:fit-content}.contact-links{list-style:none;padding:0;margin:var(--space-5) 0 0;display:grid;justify-items:start;gap:var(--space-2)}.contact-links a{display:flex;align-items:center;gap:var(--space-3);max-width:100%;min-height:var(--touch-target);padding:var(--space-2) var(--space-3);border-radius:var(--radius-field);font-size:1rem;text-decoration:none;overflow-wrap:anywhere;transition:background-color 160ms ease}.contact-links a:is(:hover,:focus-visible){background:var(--color-paper-raised);color:var(--color-ink)}.contact-links a>span{min-width:0}.contact-note{font-size:var(--type-small);color:var(--color-ink-muted);margin-top:var(--space-5);max-width:30ch}.assessment-form{min-width:0;scroll-margin-top:var(--space-6)}.assessment-form h3{font-size:var(--type-subheading)}.form-help{font-size:var(--type-small);color:var(--color-ink-muted);margin-top:var(--space-2)}fieldset{margin:var(--space-6) 0 0;padding:0;border:0;min-width:0}legend{padding:0;margin-bottom:var(--space-5);font-size:1rem;font-weight:var(--weight-strong)}.field-grid{display:grid;gap:var(--space-5)}.field{min-width:0}label{display:block;font-size:1rem;line-height:var(--line-height-small);margin-bottom:var(--space-2)}input,select,textarea{width:100%;min-width:0;max-width:100%;min-height:var(--control-height);padding:var(--space-3);color:var(--color-ink);background:var(--color-white);border:var(--border-thin) solid var(--color-control-line);border-radius:var(--radius-field);font-size:1rem;line-height:1.5}select{appearance:none;padding-right:var(--space-7);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M2 5h12M4 8h8M6 11h4' fill='none' stroke='%233A1E5C' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center}textarea{resize:vertical}.field-hint,.field-error{font-size:.875rem;line-height:1.5;margin-top:var(--space-2)}.field-hint{color:var(--color-ink-muted)}.field-error,.form-error{color:var(--color-accent-strong)}[aria-invalid=true]{border-color:var(--color-accent-strong);border-width:2px}.form-notice{font-size:var(--type-small);color:var(--color-ink-muted);margin-block:var(--space-6) var(--space-5)}.form-error{font-size:1rem;margin-bottom:var(--space-5)}.assessment-form>.button{width:100%}.form-result{padding:var(--space-5);margin-top:var(--space-6);background:var(--color-paper-raised);border-radius:var(--radius-field)}.result-title{font-size:var(--type-subheading);font-weight:var(--weight-strong)}.form-result>p:not(.result-title){font-size:1rem}.form-result>.button{margin-top:var(--space-5);width:100%}.draft-details{margin-top:var(--space-4)}.draft-details summary{font-size:1rem}.draft-details label{margin-top:var(--space-4)}.copy-button{gap:var(--space-2);margin-top:var(--space-3)}.copy-button .icon{width:1.25rem;height:1.25rem}
.button-flip{position:relative;isolation:isolate}
.flip-window{display:block;position:relative;overflow:hidden;min-width:0;z-index:1}
.flip-track{display:block;position:relative;transition:transform var(--motion-flip) var(--motion-easing)}
.flip-track>span{display:block}
.flip-track>[aria-hidden=true]{position:absolute;top:100%;left:0;width:100%}
.button.button-flip{overflow:hidden}
.button.button-flip::before{content:"";position:absolute;inset:0;background:var(--button-hover-bg);transform:translateY(100%);transition:transform var(--motion-flip) var(--motion-easing)}
.button.button-flip:hover,.button.button-flip:active{background:var(--button-bg)}
.button-flip .flip-track>[aria-hidden=true]{color:var(--button-hover-fg)}
.button-flip:focus-visible .flip-track{transform:translateY(-100%)}
.button.button-flip:focus-visible::before{transform:translateY(0)}
.button-flip:focus-visible>.icon{color:var(--button-hover-fg)}
.button:disabled .flip-track{transform:none}
.button:disabled::before{transform:translateY(100%)}
.contact-capsule{--contact-color:var(--color-ink);position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);min-height:var(--control-height);padding:var(--space-3) var(--space-5);border:1px solid var(--contact-color);border-radius:var(--radius-floating);background:var(--color-white);color:var(--color-ink);text-decoration:none;font-weight:var(--weight-strong);font-size:1rem}
.contact-capsule::before{content:"";position:absolute;inset:0;background:var(--contact-color);clip-path:circle(0% at 50% 120%);transition:clip-path var(--motion-reveal) cubic-bezier(.23,1,.32,1)}
.contact-capsule>*{position:relative;z-index:1}
.contact-capsule .icon{color:var(--contact-color);width:1.75rem;height:1.75rem}
.contact-capsule.is-whatsapp{--contact-color:var(--color-whatsapp)}
.contact-capsule:focus-visible{background:var(--color-white);color:var(--color-white)}
.contact-capsule:focus-visible::before{clip-path:circle(150% at 50% 120%)}
.contact-capsule:focus-visible .icon{color:var(--color-white)}
.floating-contact{position:fixed;right:max(var(--space-4),env(safe-area-inset-right));bottom:max(var(--space-4),env(safe-area-inset-bottom));max-width:calc(100vw - 2 * var(--space-4));z-index:var(--layer-floating)}
.site-footer{padding-block:var(--space-7) var(--space-4);background:var(--color-ink);color:var(--color-white)}
.site-footer a:hover{color:var(--color-white)}
.site-footer :focus-visible{outline-color:var(--color-white)}
.site-footer ::selection{background:var(--color-paper);color:var(--color-ink)}
.footer-top{display:grid;gap:var(--space-6);align-items:center}
.footer-brand .brand img{filter:brightness(0) invert(1)}
.footer-brand>p{font-size:var(--type-small);color:var(--color-paper-raised);max-width:35ch;margin-top:var(--space-4)}
.footer-connect{display:grid;gap:var(--space-3);justify-items:start;min-width:0}
.footer-email{display:inline-flex;align-items:center;min-height:var(--touch-target);font-size:1rem;overflow-wrap:anywhere;max-width:100%}
.footer-socials{display:flex;align-items:center;gap:var(--space-3)}
.footer-social{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:50%;color:var(--color-white);transition:transform 240ms ease}
.social-instagram,.social-contact{background:var(--color-accent)}
.social-youtube{background:var(--color-youtube)}
.social-contact.is-whatsapp{background:var(--color-whatsapp)}
.footer-social:focus-visible{transform:translateY(-3px) rotate(-4deg)}
.footer-credit{display:flex;justify-content:center;margin-top:var(--space-4)}
.footer-credit a{display:block;width:min(100%,260px);min-height:var(--touch-target);opacity:.92;transition:opacity 200ms ease}
.footer-credit a:hover,.footer-credit a:focus-visible{opacity:1}
.footer-credit img{width:100%;height:auto}
@media(hover:hover) and (pointer:fine){
  .button-flip:not(:disabled):hover .flip-track{transform:translateY(-100%)}
  .button.button-flip:not(:disabled):hover::before{transform:translateY(0)}
  .button-flip:not(:disabled):hover>.icon{color:var(--button-hover-fg)}
  .contact-capsule:hover{background:var(--color-white);color:var(--color-white)}
  .contact-capsule:hover::before{clip-path:circle(150% at 50% 120%)}
  .contact-capsule:hover .icon{color:var(--color-white)}
  .footer-social:hover{transform:translateY(-3px) rotate(-4deg)}
}
@media(hover:none){
  .button.button-flip:not(:disabled):active{background:var(--button-hover-bg);color:var(--button-hover-fg)}
  .contact-capsule:hover{background:var(--color-white);color:var(--color-ink)}
  .contact-capsule:active{background:var(--contact-color);color:var(--color-white)}
  .contact-capsule:active .icon{color:var(--color-white)}
}

@media(min-width:48rem){.main-nav{width:auto;order:0;margin-left:auto;gap:var(--space-6)}.language-switch{margin-left:var(--space-4)}.hero-layout{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);column-gap:var(--space-7)}.hero-heading,.hero-description,.hero-actions,.hero-note{grid-column:1}.hero-portrait{grid-column:2;grid-row:1/5;align-self:center;margin-top:0}.hero-actions .button{max-width:100%}.split-layout{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(3rem,8vw,7.5rem)}.audience-copy{padding-left:0}.teacher-layout{grid-template-columns:minmax(0,4fr) minmax(0,6fr);column-gap:clamp(3rem,8vw,7.5rem);row-gap:var(--space-5);max-width:66rem}.teacher-layout h2{grid-column:2}.teacher-portrait{grid-column:1;grid-row:1/3;align-self:center}.teacher-copy{grid-column:2}.words{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-7);row-gap:var(--space-7)}.word:nth-child(even){padding-top:var(--space-6)}.culture-close{margin-top:var(--space-7)}.learning-list>div{grid-template-columns:1fr 1.25fr;gap:var(--space-7)}.testimonials{grid-template-columns:1.4fr 1fr;gap:var(--space-8);align-items:start;padding-left:var(--space-7)}.testimonial-secondary{padding-top:var(--space-6)}.contact-layout{grid-template-columns:minmax(0,4fr) minmax(0,6fr);gap:var(--space-8)}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-wide{grid-column:1/-1}.footer-top{grid-template-columns:1fr auto;gap:var(--space-7)}.footer-connect{justify-items:end}.footer-credit a{width:320px}}
@media(min-width:64rem){.section{--section-top:3rem;--section-bottom:3.5rem}.hero{--section-top:1.5rem;--section-bottom:2.5rem}.culture{--section-top:4rem;--section-bottom:5rem}.contact{--section-top:4rem;--section-bottom:4rem}.hero-layout{column-gap:var(--space-9)}.hero-portrait{margin-right:var(--space-5)}.contact-layout{gap:var(--space-8)}}
@media(max-width:24rem){.header-inner{column-gap:var(--space-2)}.brand{width:10.5rem}.language-switch{gap:0}.language-switch button{min-width:var(--touch-target);padding-inline:var(--space-1)}.hero-actions .button{width:100%}.contact-direct .button{width:100%}.contact-links a{font-size:.9375rem}}
@media(prefers-reduced-motion:reduce){.button-flip:not(:disabled):is(:focus-visible,:active) .flip-track{color:var(--button-hover-fg)}.button-flip .flip-track{transform:none!important}.footer-social{transform:none!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(prefers-reduced-motion:reduce) and (hover:hover) and (pointer:fine){.button-flip:not(:disabled):hover .flip-track{color:var(--button-hover-fg)}}
@media print{.site-header,.floating-contact,.hero-actions,.assessment-form,.language-switch{display:none!important}.section{padding-block:1.5rem}.culture{print-color-adjust:exact}.button{display:none}.container{width:100%}details>p{display:block!important}body{font-size:11pt}}
