/* October review: application-led Lab, editorial photography and breathing room. */
.hero h1{max-width:1100px}
.lab-paths{padding-top:30px}
.lab-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:end;margin-bottom:48px}
.lab-heading>div:last-child{max-width:410px;padding-bottom:8px}
.lab-heading>div>p:not(.eyebrow){font-size:17px;color:var(--muted);margin-bottom:26px}
.lab-heading h2{margin-bottom:0}
.area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.area-card{--tile:#eee9dd;--object:#c6c0b0;--shade:#8b877a;--highlight:#f7f5ef;background:var(--tile);padding:24px 26px 22px;border-radius:20px;display:flex;flex-direction:column;min-width:0;position:relative;isolation:isolate;overflow:hidden}
.area-financeiro{--tile:#e4eadc;--object:#b9c2ac;--shade:#828e75;--highlight:#f1f4eb}
.area-dados{--tile:#e0e8ea;--object:#b1bfc3;--shade:#7e9197;--highlight:#eff3f3}
.area-organizacao{--tile:#eee9dd;--object:#c6c0b0;--shade:#8b877a;--highlight:#f7f5ef}
.area-criacao{--tile:#e8e4ed;--object:#c1b9c9;--shade:#918799;--highlight:#f5f2f7}
.area-ia{--tile:#e4eadc;--object:#b9c2ac;--shade:#828e75;--highlight:#f1f4eb;transition:transform .45s,box-shadow .45s}
a.area-card:hover{transform:translateY(-5px);box-shadow:0 18px 30px #263a2012}
.area-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.08em;color:#3f453c}
.area-art{height:185px;display:grid;place-items:center;margin:5px 0 7px}
.area-art svg{width:210px;max-width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1)}
.area-card:hover .area-art svg{transform:translateY(-5px) rotate(-3deg)}
.area-card h3{font-size:32px;margin:4px 0 12px}
.area-card>p{color:#484e43;font-size:14px;line-height:1.5;max-width:260px;margin:0 0 25px;min-height:42px}
.area-foot{display:flex;justify-content:space-between;gap:8px;align-items:center;border-top:1px solid #263a2026;padding-top:16px;margin-top:auto;font-size:11px;color:#3b4535}
.area-foot>.arrow-icon{width:18px;height:18px}
.lab-now{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:25px;padding-top:28px}
.lab-now>span{font-size:10px;letter-spacing:.07em;display:flex;gap:9px;align-items:center;white-space:nowrap}
.lab-now i{width:6px;height:6px;border-radius:50%;background:#657454}
.lab-now p{font-size:12px;line-height:1.6;color:var(--muted);margin:0;max-width:460px}
.lab-now a{display:flex;align-items:center;gap:16px;font-size:12px;white-space:nowrap}
.editorial-photo{position:relative;min-height:525px;display:flex;flex-direction:column;justify-content:space-between;color:var(--ink);background:#e0e8ea;isolation:isolate;padding:32px}
.editorial-photo img,.editorial-photo video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.48) contrast(.85) brightness(1.12);opacity:.88;z-index:-2;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.editorial-photo:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#e0e8ea18 0%,#e0e8ea08 27%,#e0e8ea75 48%,#e0e8eaf2 70%,#e0e8ea 88%)}
.editorial-photo:hover img,.editorial-photo:hover video{transform:scale(1.035)}
.editorial-photo>.eyebrow{font-size:10px;color:#fff;text-shadow:0 1px 8px #29372d99}
.editorial-photo .editorial-photo-copy h3{font-size:clamp(32px,3.5vw,52px);line-height:1.07;letter-spacing:-.045em;margin:0 0 28px;max-width:530px}
.editorial-photo .card-bottom{border-top-color:#a5af9b80;align-items:center;color:var(--ink);font-size:12px}
.editorial-photo .card-bottom>span{font-size:12px}
.editorial-side{justify-content:center}
.editorial-side>a{margin-top:25px}
.project-invitation{margin-bottom:100px;gap:10%;padding-block:82px}
.project-invitation p:not(.eyebrow){font-size:17px;line-height:1.65}
.project-invitation>div:last-child{max-width:470px}
.project-invitation>div:last-child>p:nth-child(2){font-weight:500;color:#38462f}

/* The sphere is rendered in WebGL. This material is the no-WebGL fallback. */
.bubble-travel{width:clamp(205px,22vw,345px);left:2.5%;top:27%;animation:bubble-drift 26s ease-in-out infinite alternate}
.soap-bubble{border:0;background:radial-gradient(ellipse at 30% 23%,#fff 0,#ffffffd0 5%,transparent 16%),radial-gradient(ellipse at 70% 78%,#e0b7d978,transparent 35%),radial-gradient(circle at 42% 38%,#fff1 40%,#86aaa05c 72%,#495f568f 90%,#fff9 96%);box-shadow:inset -8px -12px 22px #61766833,inset 6px 8px 12px #fff9;animation:none;transition:opacity .25s,transform .4s;overflow:visible;padding:0;appearance:none}
.soap-bubble canvas{position:absolute;inset:-7%;width:114%;height:114%;pointer-events:none}
.soap-bubble.webgl-ready{background:transparent;box-shadow:none}
.soap-bubble.webgl-ready:before,.soap-bubble.webgl-ready:after,.soap-bubble.webgl-ready .bubble-glint{display:none}
.bubble-hint{font-size:10px;letter-spacing:.04em;top:calc(100% + 12px);color:#5a6850}
.bubble-drops i{width:7px;height:9px;background:linear-gradient(125deg,#fff,#a4bcd5 40%,#baa2c8 70%,#fff);box-shadow:inset 1px 1px 2px #fff,1px 2px 3px #45584a33;animation:drop-away 1.1s cubic-bezier(.1,.55,.2,1) var(--delay) both}
.burst .soap-bubble{transform:scale(1.08)}
.page-hidden *{animation-play-state:paused!important}
@keyframes bubble-drift{0%{transform:translate(0,25px) rotate(-7deg)}35%{transform:translate(3vw,-30px) rotate(4deg)}75%{transform:translate(68vw,45px) rotate(-3deg)}100%{transform:translate(65vw,-20px) rotate(6deg)}}
@media(min-width:1550px){.area-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.area-card{padding:20px}.area-card h3{font-size:25px}.area-art{height:150px}.area-card>p{min-height:63px}.area-foot{font-size:10px}.lab-paths{max-width:1800px}}
@media(max-width:900px){.lab-heading{gap:7%}.lab-now{grid-template-columns:1fr auto;gap:14px}.lab-now>span{grid-column:1/-1}.area-card{padding:20px}.area-card h3{font-size:29px}.area-art{height:155px}.project-invitation{margin-bottom:75px}}
@media(max-width:650px){
 .lab-paths{padding-top:0}.lab-heading{grid-template-columns:1fr;gap:24px;margin-bottom:30px}.lab-heading>div:last-child{max-width:none}.lab-heading>div>p:not(.eyebrow){font-size:16px}
 .area-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.area-card{padding:16px 15px;border-radius:16px}.area-art{height:125px;margin:2px -4px 4px}.area-top{font-size:8px}.area-card h3{font-size:25px;letter-spacing:-.05em}.area-card>p{font-size:12px;min-height:54px;margin-bottom:17px}.area-foot{font-size:9px;min-height:43px;padding-top:12px;line-height:1.4}.area-foot>.arrow-icon{width:14px;height:14px;flex-shrink:0}
 .lab-now{grid-template-columns:1fr;gap:12px;padding-top:23px}.lab-now a{margin-top:3px}.lab-now p{font-size:12px}
 .editorial-photo{min-height:460px;padding:25px}.editorial-photo img,.editorial-photo video{object-position:57% center}.editorial-photo .editorial-photo-copy h3{font-size:35px}.editorial-photo h3 br{display:none}
 .project-invitation{margin-bottom:60px;padding:48px 25px}.project-invitation p:not(.eyebrow){font-size:16px}.project-invitation .pill{width:100%;gap:20px}
 .bubble-travel{width:185px;left:-18%;top:23%;animation-name:bubble-drift-mobile}.bubble-hint{font-size:9px;width:160px;left:12px}.bubble-status{bottom:65px;padding:0 20px}
 @keyframes bubble-drift-mobile{0%{transform:translate(0,0) rotate(-5deg)}45%{transform:translate(3vw,140px) rotate(5deg)}75%{transform:translate(73vw,190px) rotate(-3deg)}100%{transform:translate(70vw,-15px) rotate(5deg)}}
}
@media(max-width:360px){.area-card{padding:13px 12px}.area-card h3{font-size:22px}.area-art{height:112px}.area-card>p{min-height:72px}.area-top{font-size:7px}.area-foot{font-size:8px}}
@media(prefers-reduced-motion:reduce){.bubble-travel{animation:none!important}.area-card:hover .area-art svg,.editorial-photo:hover img,.editorial-photo:hover video{transform:none}.bubble-travel{left:1%;top:28%}.bubble-hint{display:block}.soap-bubble{transition:none}}

.editorial-motion-card{position:relative;min-width:0}
.editorial-motion-card .editorial-photo{height:100%}
.editorial-photo video{opacity:0;pointer-events:none}
.editorial-photo.video-ready video{opacity:.88}
.editorial-video-toggle{position:absolute;top:20px;right:20px;z-index:2;border:1px solid #ffffff70;border-radius:50px;padding:9px 13px;background:#273c47bb;color:#fff;font:11px var(--sans);cursor:pointer}
.editorial-video-toggle:focus-visible{outline:3px solid #263f50;outline-offset:4px}
.editorial-motion-card .eyebrow{padding-right:110px}
@media(prefers-reduced-motion:reduce){.editorial-photo:hover video{transform:none}}

/* Original editorial composition, with a quiet moving course catalog. */
.lab-catalog{gap:9%;align-items:center}
.lab-catalog .lab-copy>p:not(.eyebrow){margin-bottom:24px}
.lab-principles{display:flex;gap:25px;margin-top:32px;font-size:13px;color:#53594b}
.lab-principles span:before{content:'↳';margin-right:8px;color:#858b7a}
.lab-catalog .lab-copy>.lab-availability{font-size:12px;line-height:1.6;margin-top:18px;max-width:360px;color:var(--muted)}
.course-catalog{min-width:0;padding:28px;background:#eeece5;overflow:hidden;transform:rotate(2deg)}
.course-catalog .lesson-top{font-size:10px;padding-bottom:19px}
.catalog-heading{display:flex;justify-content:space-between;align-items:center;padding:24px 0 20px;gap:12px}
.course-catalog .catalog-heading h3{font-size:clamp(28px,2.7vw,40px);line-height:1.06;margin:0;letter-spacing:-.04em}
.catalog-toggle{width:34px;height:34px;flex-shrink:0;border:1px solid #babeb0;border-radius:50%;background:transparent;color:#424b38;cursor:pointer;font-size:13px}
.catalog-toggle:focus-visible{outline:2px solid #424b38;outline-offset:4px}
.course-window{height:352px;display:grid;grid-template-columns:1fr 1fr;gap:12px;overflow:hidden;mask-image:linear-gradient(transparent,#000 5%,#000 95%,transparent)}
.course-belt{animation:course-scroll 32s linear infinite;will-change:transform}
.course-column:nth-child(2) .course-belt{animation-direction:reverse;animation-duration:37s}
.course-set{display:grid;gap:12px;padding-bottom:12px}
.course-catalog .course-cover{height:192px;padding:14px 16px;border-radius:12px}
.course-kind{font-size:8px;letter-spacing:.12em;color:#62685c}
.course-catalog .area-art{height:108px;margin:0}
.course-catalog .area-art svg{width:145px}
.course-cover h4{font-size:19px;font-weight:500;letter-spacing:-.035em;line-height:1.1;margin:4px 0 7px}
.course-status{font-size:9px;color:#62685c}
.course-catalog .lesson-foot{margin-top:19px;font-size:11px}
.course-catalog.is-paused .course-belt,.motion-paused .course-belt,.course-catalog.is-offscreen .course-belt{animation-play-state:paused}
@keyframes course-scroll{to{transform:translateY(-50%)}}
@media(max-width:900px){.lab-catalog{gap:6%}.course-catalog{padding:22px}.course-cover h4{font-size:17px}.course-catalog .course-cover{padding:13px 12px}}
@media(max-width:650px){.lab-catalog{gap:38px}.course-catalog{transform:rotate(1deg);margin:0 4px}.course-window{height:325px}.course-catalog .catalog-heading h3{font-size:33px}.lab-principles{margin-top:26px}.course-catalog .lesson-top{font-size:9px}}
@media(prefers-reduced-motion:reduce){.course-belt{animation:none!important}.course-window{height:352px;overflow-y:auto;mask-image:none}.course-set[aria-hidden]{display:none}.course-catalog{transform:none}.catalog-toggle{display:none}}
