/* One continuous cosmos shared by all of the existing home modules. */
body.cpd-liquid{position:relative;isolation:isolate;background:#08051c;font-family:var(--font);color:var(--white);overflow-x:clip}
.cosmos-backdrop{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;contain:strict}
.cosmos-backdrop .liquid-sky{z-index:0}
.cosmos-backdrop #liquid-universe{z-index:1}
#liquid-foreground{position:fixed;inset:0;width:100%;height:100%;z-index:35;pointer-events:none;contain:strict}
/* Keep both drawing planes stable as the mobile address bar opens and closes. */
@media(max-width:760px){.cosmos-backdrop,#liquid-foreground{bottom:auto;height:100vh;height:100lvh}}
.webgl-unavailable #liquid-foreground{visibility:hidden}
@media(prefers-reduced-motion:reduce){#liquid-foreground{display:none}}
.cosmos-backdrop .scene-vignette{z-index:2;background:radial-gradient(ellipse at center,transparent 20%,#08051c35 95%)}
.liquid-ready .liquid-sky .aurora,.liquid-ready .liquid-sky .stars{display:none}
.liquid-ready.webgl-unavailable .liquid-sky .stars{display:block}
.liquid-journey{height:auto}
.liquid-stage{position:relative;height:auto;min-height:0;overflow:visible;perspective:none;isolation:auto}
.chapter{position:relative;inset:auto;height:100svh;min-height:620px;opacity:1;visibility:visible;pointer-events:auto;transform:none;transform-style:flat;will-change:auto;overflow:clip;perspective:1400px;scroll-margin-top:0}
.chapter-welcome{min-height:620px}
.chapter-copy{translate:0 var(--copy-travel,0px)}
.chapter-copy::before{background:radial-gradient(ellipse,#0b071cdb 10%,#0b071c90 50%,transparent 74%)}
.photo-orbit{will-change:auto;transform:none}
.media-flight{position:relative;width:100%;height:100%;transform:none;will-change:auto}
.media-flight-phone{display:flex;align-items:center;justify-content:center}
.cpd-liquid .photo-orbit .liquid-photo{transform:none}
.card-media .media-flight{border-radius:inherit;overflow:hidden}
.cpd-liquid .card-media img,.cpd-liquid .service-card:hover .card-media img{transform:none;transition:none}
.cpd-liquid .service-card{transform:none;will-change:auto;transition:box-shadow .35s,border-color .35s}
.chapter .alien-float{will-change:auto;transform:none}
.journey-bottom{position:fixed;bottom:20px;transition:opacity .3s,translate .3s}
.journey-bottom.beyond-journey{opacity:0;translate:0 15px;pointer-events:none;visibility:hidden}
.page-progress{position:fixed;bottom:0;left:0;right:0;z-index:65}
.welcome-name{font-size:clamp(26px,4vw,64px);font-weight:700;color:var(--white);max-width:850px;margin:40px auto 0;line-height:1.25}
.welcome-logo{width:min(70vw,650px);max-height:34vh;object-fit:contain;margin:25px auto}
.cpd-liquid .brand img{width:calc(var(--header-logo,64px)*.55);height:calc(var(--header-logo,64px)*.55);object-fit:contain;flex-shrink:0}
.brand-logo-right img{order:2}
.hero-ambient-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.36;pointer-events:none}
.gummy-whatsapp{--c1:#bafba6;--c2:#32a861;--c3:#156a3b;text-shadow:0 1px 4px #164b2c}
.gummy-link{background:none;border-color:transparent;box-shadow:none;text-shadow:none;text-decoration:underline}
.gummy-link::before{display:none}
.cpd-liquid .gummy:not(.gummy-link){overflow:hidden;border-color:#fff9;box-shadow:inset 0 2px 2px #ffffffdb,inset 2px 0 9px #ffffff45,inset -3px -6px 9px #17072155,inset 0 -2px 2px #ffffff70,0 4px 0 color-mix(in srgb,var(--c3) 78%,#100625),0 12px 25px color-mix(in srgb,var(--c2) 25%,transparent)}
.cpd-liquid .gummy:not(.gummy-glass):not(.gummy-link){background:radial-gradient(ellipse at 22% 0,#ffffffcf,transparent 46%),radial-gradient(ellipse at 86% 100%,#ffffff57,transparent 38%),linear-gradient(175deg,color-mix(in srgb,var(--c1) 93%,transparent),color-mix(in srgb,var(--c2) 88%,transparent) 55%,var(--c3));backdrop-filter:blur(8px) saturate(150%);-webkit-backdrop-filter:blur(8px) saturate(150%)}
.cpd-liquid .gummy::before{inset:3px 10% 53%;background:linear-gradient(#ffffff80,#ffffff08);border-top:1px solid #ffffff8a}
.cpd-liquid .gummy:not(.gummy-link)::after{content:'';position:absolute;inset:-40% auto -40% -50%;width:35%;background:linear-gradient(100deg,transparent,#ffffff12 25%,#ffffff96 50%,#ffffff12 72%,transparent);transform:translateX(-200%) rotate(18deg);pointer-events:none;opacity:0}
.cpd-liquid .gummy.candy-visible::after{animation:candy-glint 5.8s cubic-bezier(.25,.1,.35,1) infinite;animation-delay:.8s}
.cpd-liquid .gummy-cyan.candy-visible::after{animation-delay:1.4s}
.cpd-liquid .gummy-glass.candy-visible::after{animation-delay:2.1s}
.cpd-liquid .gummy:active{transform:translateY(3px) scale(1.075,.90)}
@keyframes candy-glint{0%,54%{transform:translateX(-200%) rotate(18deg);opacity:0}59%{opacity:.38}77%{transform:translateX(580%) rotate(18deg);opacity:.30}82%,100%{transform:translateX(580%) rotate(18deg);opacity:0}}
.motion-off .gummy::after,.page-hidden .gummy::after{animation:none!important;opacity:0!important}
.motion-off .gummy.wobble{animation:none}
@media(prefers-reduced-motion:reduce){.cpd-liquid .gummy::after{animation:none!important;opacity:0!important}}
.gummy[data-fx=simple]:hover,.gummy[data-fx=simple]:active{transform:none}
.cpd-liquid[data-liquid-bg-effect=ninguno] .stars,.cpd-liquid[data-liquid-bg-effect=estrellas] .aurora,.cpd-liquid[data-liquid-bg-effect=ninguno] .aurora{display:none}
.alien-float{translate:clamp(-15vw,calc((var(--art-x,50) - 50)*.4vw),15vw) clamp(-8vh,calc((var(--art-y,43) - 43)*.3vh),8vh);scale:clamp(.7,var(--art-scale,1),1.25)}
.welcome-copy{translate:clamp(-10vw,calc((var(--sub-x,50) - 50)*.3vw),10vw) clamp(-7vh,calc((var(--sub-y,82) - 82)*.3vh),7vh);scale:clamp(.8,var(--sub-scale,1),1.2)}
.audio-toggle{position:fixed;z-index:45;right:20px;bottom:18px;border-radius:25px;padding:11px 15px;font-size:10px;background:#171029db}
.custom-cosmos-media{position:absolute;inset:0;z-index:0;pointer-events:none}
.custom-cosmos-media img,.custom-cosmos-media video{width:100%;height:100%;object-fit:cover;opacity:var(--bg-opacity,.42)}
.constructor-home-liquid{padding-block:60px}
.services-module{padding-top:75px;padding-bottom:30px}
.service-card{background:linear-gradient(145deg,#171024d6,#100b1bd9 50%,#251832ab)}
.celebration-panel{background:radial-gradient(ellipse at 8% 90%,#b3299f18,transparent 40%),radial-gradient(ellipse at 100% 0%,#2784b624,transparent 50%),linear-gradient(140deg,#180e24c4,#140d26b0)}
.thesis-module{position:relative;isolation:isolate}
.thesis-module::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse,#08051ccf 12%,#08051c88 52%,transparent 74%);z-index:-1;pointer-events:none}
.values-module a,.nubaa-module>.glass{background:linear-gradient(140deg,#1c142ac9,#110c20cf)}
.trust-strip{background:#10091fb8}
.liquid-footer{position:relative;display:flex;flex-direction:column;align-items:center;gap:22px;padding-block:48px 32px;text-align:center;line-height:1.8}
.liquid-footer::before{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#08051caa);z-index:-1}
.liquid-footer .footer-identity{width:100%;max-width:580px}
.liquid-footer .footer-brand{display:flex;flex-direction:column;align-items:center;gap:5px;margin:0}
.liquid-footer .footer-brand strong{font-size:clamp(16px,1.5vw,19px);font-weight:700;line-height:1.5;color:var(--white);overflow-wrap:anywhere}
.liquid-footer .footer-brand span{font-size:11px;line-height:1.6;letter-spacing:.08em;color:#d0c4dc}
.liquid-footer .footer-note{margin:13px 0 0;font-size:11px;line-height:1.9;color:#bfb2cc;text-wrap:balance}
.liquid-footer nav{display:grid;grid-template-columns:repeat(4,max-content);justify-content:center;align-items:center;gap:4px 28px;margin:0;font-size:11px}
.liquid-footer nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:4px 3px;white-space:nowrap;color:#dfd5e9}
.liquid-footer nav a:hover,.liquid-footer nav a:focus-visible{text-decoration:underline;text-underline-offset:5px;color:var(--white)}
.liquid-footer>small{display:block;margin:0;font-size:10px;line-height:1.8;color:#afa0bf;text-wrap:balance}
@media(max-width:760px){.liquid-footer{gap:18px;padding-block:40px 28px}.liquid-footer nav{width:min(100%,360px);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}.liquid-footer .footer-note{max-width:290px;margin-inline:auto}}
/* Preserve the site's white headings, without coloring the final word. */
.wow-title,.wow-title span,.chapter-copy h2,.chapter-copy h2 span,.section-head h2,.section-head h2 span,.celebration-module h2,.celebration-module h2 span,.thesis-module h2,.thesis-module h2 span{color:var(--white);background:none;background-clip:border-box;-webkit-text-fill-color:currentColor;text-shadow:none}
@media(min-width:761px) and (max-height:700px){.chapter{min-height:560px}}
@media(max-width:760px){
 .chapter{height:100svh;min-height:700px;perspective:1000px}
 .chapter-welcome{min-height:700px}
 .cpd-liquid .brand img{width:clamp(22px,calc(var(--header-logo,64px)*.4),38px);height:clamp(22px,calc(var(--header-logo,64px)*.4),38px)}
 .glass{backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%)}
 .liquid-photo{backdrop-filter:none;-webkit-backdrop-filter:none}
 .service-card{backdrop-filter:none;-webkit-backdrop-filter:none}
 .photo-orbit,.chapter-gravity .photo-orbit{top:15%}
 .chapter-gravity .photo-orbit{top:20%}
 .chapter-copy,.chapter-gravity .chapter-copy{top:57%}
 .chapter-phone .chapter-copy{top:58%}
 .chapter-copy::before{inset:-23px -20px;background:radial-gradient(ellipse,#08051ced 16%,#08051cbb 55%,transparent 78%);filter:blur(13px)}
 .journey-bottom{bottom:17px;left:16px;right:16px}
 .services-module{padding-top:70px}
 .section-head{padding-bottom:16px;position:relative;isolation:isolate}
 .section-head::before{content:'';position:absolute;inset:-25px -14px;background:radial-gradient(ellipse,#08051cf0 15%,transparent 73%);z-index:-1}
}
@media(max-width:760px) and (max-height:740px){.chapter,.chapter-welcome{min-height:690px}.chapter-copy,.chapter-gravity .chapter-copy{top:53%}.chapter-phone .chapter-copy{top:55%}.welcome-copy{bottom:112px}}
@media(prefers-reduced-motion:reduce){
 .liquid-journey,.liquid-stage{height:auto;min-height:0}
 .chapter,.chapter:not(.chapter-welcome){display:block;opacity:1!important;visibility:visible!important;transform:none!important}
 .photo-orbit,.alien-float,.chapter-copy{transform:none!important;translate:none!important}
 .chapter-copy{transform:translateY(-46%)!important}
 .journey-bottom,.page-progress{display:none}
 .gummy,.service-card{will-change:auto}
}
@media(prefers-reduced-motion:reduce) and (max-width:760px){.chapter-copy{transform:none!important}}
/* Mobile chapters grow with the CMS text; controls never fall under the dock. */
@media(max-width:760px){
 .chapter:not(.chapter-welcome){display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:112px 0 112px;height:auto;min-height:100svh}
 .chapter:not(.chapter-welcome) .photo-orbit{position:relative;left:auto;right:auto;top:auto;width:72%;height:min(39svh,350px);flex-shrink:0}
 .chapter.chapter-gravity .photo-orbit{width:80%;height:min(33svh,295px)}
 .chapter:not(.chapter-welcome) .chapter-copy{position:relative;left:auto;right:auto;top:auto;width:84%;transform:none;margin:0;text-align:center}
 .chapter-copy h2{overflow-wrap:anywhere}
 .phone-lens{backdrop-filter:none;-webkit-backdrop-filter:none;background:radial-gradient(ellipse at 25% 15%,#ffffff16,#22143125 68%)}
}

.service-entry{min-width:0;display:flex;flex-direction:column;align-items:stretch}.service-entry>.service-card{height:100%;flex:1}.service-entry>.ambient-open{align-self:flex-start;margin-bottom:12px}.chapter-copy>.ambient-open{margin-left:8px}

@media(min-width:761px){.service-entry{grid-column:span 2}.service-entry-wide{grid-column:span 3}}

/* ASTRA 01 mobile correction: contain the complete hero art and let copy flow. */
@media(max-width:760px){
 .chapter-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100svh;min-height:620px;padding:96px 22px 104px;perspective:none}
 .chapter-welcome .welcome-top{position:relative;top:auto;left:auto;right:auto;width:100%;font-size:12px;line-height:1.5}
 .chapter-welcome .alien-float{position:relative;inset:auto;width:100%;max-width:440px;aspect-ratio:3/2;margin:16px 0 8px;translate:none;scale:clamp(.7,var(--art-scale,1),1)}
 .chapter-welcome .alien-float img{position:relative;left:auto;top:auto;width:100%;max-width:100%;height:auto;transform:none;object-fit:contain}
 .chapter-welcome .alien-float.hero-original{aspect-ratio:1.8}
 .chapter-welcome .alien-float.hero-original img{position:absolute;left:50%;top:50%;width:135%;max-width:none;transform:translate(-50%,-50%)}
 .chapter-welcome .welcome-copy{position:relative;inset:auto;width:100%;padding:0;translate:none;scale:clamp(.8,var(--sub-scale,1),1)}
 .chapter-welcome .wow-title{font-size:clamp(17px,4.6vw,22px);line-height:1.4;letter-spacing:-.6px;max-width:100%}
 .chapter-welcome .event-copy{font-size:10px;line-height:1.65;margin-top:10px}
 .chapter-welcome .welcome-actions{gap:13px;margin-top:24px}
 .chapter-welcome .welcome-actions .gummy{width:min(245px,86%);min-width:0;min-height:44px;padding:10px 18px;font-size:11px}
 .chapter-welcome .welcome-actions .gummy b{font-family:Arial,sans-serif;font-size:16px;margin-left:10px}
 .journey-bottom{bottom:max(16px,env(safe-area-inset-bottom));gap:10px}
 .journey-bottom .skip-journey{display:none}
 .journey-bottom .scroll-note{margin-right:0}
}
@media(max-width:760px) and (max-height:700px){
 .chapter-welcome{padding-top:90px;padding-bottom:92px}
 .chapter-welcome .alien-float{max-width:300px;margin-top:12px;margin-bottom:5px}
 .chapter-welcome .welcome-actions{margin-top:17px;gap:11px}
}
