/* Approved Baja Verde identity: outlined lockup and open-loop symbol. */
.brand img.baja-wordmark,.site-header .brand img.baja-wordmark,.footer-main .brand img.baja-wordmark{width:190px;height:auto;aspect-ratio:296/96;object-fit:contain;filter:none;flex-shrink:0}
.footer-main .brand img.baja-wordmark{width:210px}
.ai-demo-head img,.showcase-head img{width:36px;height:auto;aspect-ratio:87/96;object-fit:contain}
.contact-mark{content:url("assets/baja-verde-mark-white.svg");height:auto;aspect-ratio:87/96;filter:none;pointer-events:none}
/* Replace decorative motifs with the approved mark, keeping text in front. */
.hero-orbit,.manifesto-orbit,.work-orbit,.approach-orbit,.footer-orbit,.about-orbit,.projects-orbit,.ai-orbit,.journal-mark{
 border:0;border-radius:0;background:url("assets/baja-verde-mark-white.svg") center/contain no-repeat;
 width:min(54vw,780px);height:auto;aspect-ratio:87/96;min-width:0;min-height:0;
 right:-10vw;left:auto;top:6vh;bottom:auto;opacity:.075;animation:none;transform:none!important;pointer-events:none;
}
.hero-orbit::before,.hero-orbit::after,.manifesto-orbit::before,.manifesto-orbit::after,.work-orbit::before,.work-orbit::after,.approach-orbit::before,.approach-orbit::after,.footer-orbit::before,.footer-orbit::after,.about-orbit::before,.about-orbit::after,.projects-orbit::before,.projects-orbit::after,.ai-orbit::before,.ai-orbit::after,.journal-mark::before,.journal-mark::after{display:none}
.hero-orbit>*,.manifesto-orbit>*,.work-orbit>*,.approach-orbit>*,.footer-orbit>*,.about-orbit>*,.projects-orbit>*,.ai-orbit>*,.journal-mark>*{display:none}
.manifesto-orbit,.work-orbit,.approach-orbit{background-image:url("assets/baja-verde-mark-green.svg");opacity:.065;top:8%;width:min(54vw,780px)}
.manifesto-orbit{left:-15vw;right:auto}
.footer-orbit{width:440px;right:-100px;bottom:-190px;top:auto;opacity:.06}
@media(max-width:800px){
 .site-header .brand img.baja-wordmark{width:160px;height:auto}
 .footer-main .brand img.baja-wordmark{width:190px}
 .hero-orbit,.about-orbit,.projects-orbit,.ai-orbit,.journal-mark{width:100vw;right:-34vw;top:12vh;opacity:.065}
 .manifesto-orbit,.work-orbit,.approach-orbit{width:110vw;right:-50vw;top:12%;opacity:.05}
 .manifesto-orbit{left:-55vw;right:auto}
 .footer-orbit{width:360px;right:-160px;bottom:-120px}
}
/* Case studies and journal articles use pseudo-elements for their background motif. */
.case-hero::before,.article-hero::before{content:'';position:absolute;width:min(54vw,780px);height:auto;aspect-ratio:87/96;right:-10vw;top:6vh;border:0;border-radius:0;background:url("assets/baja-verde-mark-white.svg") center/contain no-repeat;opacity:.075;pointer-events:none;z-index:0}
.case-hero::after,.article-hero::after{display:none}
.case-hero>*{position:relative;z-index:1}
@media(max-width:800px){
 .case-hero::before,.article-hero::before{width:100vw;height:auto;right:-34vw;top:12vh;opacity:.065}
 .process>article{min-width:0}
 .process h3{overflow-wrap:anywhere}
}

/* Moving circles complement the static logo rather than rotating its silhouette. */
.ambient-rings.ambient-rings{position:absolute;z-index:0;pointer-events:none;width:min(66vw,960px);height:auto;aspect-ratio:1;left:-24vw;right:auto;top:-24vh;border:1px solid currentColor;border-radius:50%;color:rgba(244,240,233,.22);animation:baja-orbit 38s linear infinite;transform-origin:center;}
.ambient-rings::before,.ambient-rings::after{content:'';position:absolute;border:1px solid currentColor;border-radius:50%;inset:17%;opacity:.7}
.ambient-rings::after{inset:34%;opacity:.55}
.ambient-rings i{position:absolute;width:9px;height:9px;border-radius:50%;background:#d86b3c;left:14.65%;top:14.65%;transform:translate(-50%,-50%)}
.ambient-rings i:nth-child(2){left:73.33%;top:26.67%;background:#81967b}
.ambient-rings i:nth-child(3){left:50%;top:66%;width:6px;height:6px;background:#f4f0e9}
.manifesto .ambient-rings,.work .ambient-rings,.approach .ambient-rings{color:rgba(10,45,33,.17);top:8%;left:auto;right:-25vw;animation-direction:reverse;animation-duration:48s}
.work .ambient-rings{left:-28vw;right:auto;top:4%;animation-duration:56s}
.footer-main .ambient-rings{width:540px;left:33%;right:auto;top:15%;color:rgba(244,240,233,.14);animation-duration:60s}
.about-hero .ambient-rings,.ai-hero .ambient-rings{animation-direction:reverse;animation-duration:44s}
@keyframes baja-orbit{to{transform:rotate(360deg)}}
.assistant-trigger,.scan-fab{background:#d86b3c;color:#10251b;border:1px solid rgba(244,240,233,.28);box-shadow:0 6px 24px rgba(0,0,0,.22);transition:background .2s,box-shadow .2s,transform .2s}
.assistant-trigger:hover,.scan-fab:hover{background:#e68b60;color:#10251b;box-shadow:0 8px 28px rgba(0,0,0,.3)}
.assistant-trigger:focus-visible,.scan-fab:focus-visible{outline:3px solid #f4f0e9;outline-offset:4px;box-shadow:0 0 0 7px #0a2d21}
@media(max-width:800px){
 .ambient-rings.ambient-rings{width:130vw;left:-68vw;top:-3vh}
 .manifesto .ambient-rings,.approach .ambient-rings{left:auto;right:-70vw;top:12%}
 .work .ambient-rings{left:-70vw;top:8%}
 .footer-main .ambient-rings{width:390px;left:15%;top:auto;bottom:-120px}
}
@media(prefers-reduced-motion:reduce){.ambient-rings.ambient-rings{animation:none}.assistant-trigger,.scan-fab{transition:none}}

/* Calm shared header: appointment left, centred logo, scan beside the menu. */
.site-header>.brand{position:absolute;left:50%;transform:translateX(-50%);z-index:2}
.site-header .header-calendar,.site-header .header-actions{position:relative;z-index:2;flex-shrink:0}
.site-header .header-actions{gap:1rem;margin-left:auto}
.header-language{display:flex;align-items:center;padding:3px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:rgba(15,61,46,.2);backdrop-filter:blur(10px)}
.header-language button{min-width:36px;min-height:36px;padding:0 .45rem;border:0;border-radius:999px;background:transparent;color:#fff;font:600 .72rem var(--sans);letter-spacing:.06em;cursor:pointer;transition:background .2s,color .2s}
.header-language button:hover{background:rgba(255,255,255,.16)}
.header-language button.is-active{background:#fff;color:#0f3d2e}
.header-language button:focus-visible,.header-language-select:focus-visible{outline:2px solid #fff;outline-offset:3px}
.header-language-select{display:none;min-width:58px;height:44px;padding:0 1.7rem 0 .75rem;border:1px solid rgba(255,255,255,.8);border-radius:999px;background:rgba(15,61,46,.35);color:#fff;font:600 .75rem var(--sans);letter-spacing:.05em;cursor:pointer;color-scheme:dark}
.site-header .menu{width:44px;height:44px;flex-shrink:0}
.header-scan{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:44px;padding:.65rem 1rem;border:1px solid transparent;border-radius:100px;background:#d86b3c;color:#10251b;font-size:.875rem;font-weight:500;line-height:1.2;white-space:nowrap;transition:background .2s}
.header-scan:hover{background:#e68b60}
.header-scan svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.header-scan:focus-visible,.site-header .menu:focus-visible,.site-header .header-calendar:focus-visible,.footer-book:focus-visible{outline:2px solid var(--paper);outline-offset:4px}
.menu-language{display:flex;align-items:center;gap:1rem;margin-top:1.5rem;font:400 .875rem var(--sans);letter-spacing:0}
.menu-language>.lang{font-size:.875rem;width:44px;height:44px;letter-spacing:.04em}
.site-header.open .desktop-nav{overflow-y:auto}
@media(max-width:800px){
 .site-header .header-actions{gap:.45rem}
 .header-language{display:none}.header-language-select{display:block}
 .header-scan{display:none}
 .site-header>.brand{top:50%;left:50%;margin:0;transform:translate(-50%,-50%);align-items:center;justify-content:center}
 .site-header .brand img.baja-wordmark{display:block;width:clamp(108px,30vw,132px);margin:0}
}
@media(max-width:380px){.site-header{padding-inline:4vw}.site-header .header-actions{gap:.25rem}.site-header .brand img.baja-wordmark{width:clamp(88px,28vw,104px)}}
@media(prefers-reduced-motion:reduce){.header-scan{transition:none}}

/* Keep the website checker discoverable on phones without crowding the header. */
.scan-fab{display:none}
@media(max-width:800px){
 .scan-fab{display:flex;left:14px;bottom:calc(14px + env(safe-area-inset-bottom));width:52px;height:52px}
 .assistant-trigger.assistant-trigger{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));width:52px;height:52px;min-width:52px}
}

/* One short navigation column; keep the established identity and contact area. */
.footer-lang{background:transparent;color:inherit;font:500 .8125rem var(--sans);min-width:44px;min-height:44px;padding:.5rem .75rem;cursor:pointer;appearance:none}
.footer-lang:hover{color:var(--acid)}.footer-lang:focus-visible{outline:2px solid var(--acid);outline-offset:3px}
.footer-domain{font-size:.875rem;opacity:.75}.footer-bottom{grid-template-columns:1fr auto;gap:1rem}.footer-bottom>span:nth-child(2){grid-column:1;grid-row:2;text-align:left}.footer-bottom>div{grid-column:2;grid-row:1/3;flex-wrap:wrap;gap:.65rem 1.2rem}
.assistant-trigger>img,.assistant-head img{object-fit:contain;flex-shrink:0}.assistant-trigger>img{width:23px;height:26px}
.motif-section{position:relative;isolation:isolate;overflow:hidden}.motif-section>*:not(.page-atmosphere){position:relative;z-index:1}
.page-atmosphere.page-atmosphere{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.page-atmosphere .ambient-rings{width:min(75vw,1000px);left:-47vw;top:15%;color:rgba(15,61,46,.15);animation-duration:64s}
.page-atmosphere::after{content:'';position:absolute;background:url('assets/baja-verde-mark-green.svg') center/contain no-repeat;width:min(42vw,600px);aspect-ratio:87/96;right:-20vw;top:12%;opacity:.045}
.motif-section:nth-of-type(even) .page-atmosphere .ambient-rings{left:auto;right:-45vw;top:-12%;animation-direction:reverse}.motif-section:nth-of-type(even) .page-atmosphere::after{right:auto;left:-18vw}
.motif-section:is(.control,.case-result,.ai-contact,.contact,.solution-optimization) .page-atmosphere .ambient-rings{color:rgba(244,241,233,.15)}
.motif-section:is(.control,.case-result,.ai-contact,.contact,.solution-optimization) .page-atmosphere::after{background-image:url('assets/baja-verde-mark-white.svg');opacity:.05}
@media(max-width:800px){.page-atmosphere .ambient-rings{width:130vw;left:-95vw;top:10%}.motif-section:nth-of-type(even) .page-atmosphere .ambient-rings{right:-95vw}.page-atmosphere::after{width:85vw;right:-58vw;opacity:.035}.motif-section:nth-of-type(even) .page-atmosphere::after{left:-58vw}.footer-bottom{grid-template-columns:1fr}.footer-bottom>div{grid-column:1;grid-row:3;justify-content:flex-start}}
.footer-main{grid-template-columns:minmax(0,1.35fr) minmax(0,.7fr) minmax(0,1fr);gap:clamp(2rem,6vw,7rem);align-items:start}
.footer-brand,.footer-nav,.footer-contact{grid-column:auto;min-width:0}
.footer-nav a{line-height:1.5;overflow-wrap:anywhere;font-size:1rem}
.footer-column small{font-size:.8125rem;line-height:1.4;letter-spacing:.12em}
.footer-contact>a:first-of-type{font:400 1.15rem var(--sans);overflow-wrap:anywhere}
.footer-book{display:inline-flex;align-items:center;min-height:44px;margin-top:.6rem;padding:.7rem 1rem;border:1px solid rgba(255,255,255,.35);border-radius:100px;font-size:.875rem}
.footer-book:hover{border-color:var(--acid)}
.footer-brand>p{font-size:.875rem}
.footer-route{font-size:.8125rem}
.footer-bottom{font-size:.75rem;letter-spacing:.06em}
@media(max-width:900px){.footer-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2.5rem}.footer-brand{grid-column:1/-1}.footer-nav,.footer-contact{grid-column:auto}}
@media(max-width:520px){.footer-main{grid-template-columns:minmax(0,1fr);gap:2.5rem}.footer-brand,.footer-contact,.footer-nav{grid-column:auto}.footer-nav{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.8rem 1rem}.footer-nav small{grid-column:1/-1}.footer-nav a{font-size:1rem;min-height:32px}.footer-bottom>div{flex-wrap:wrap}}
.projects-cta.motif-section::after{display:none}
.assistant-trigger.assistant-trigger{width:48px;height:48px;min-width:48px;padding:0;justify-content:center;gap:0;border-radius:50%;background:#d86b3c;color:#10251b;border:1px solid #d86b3c}
.assistant-trigger.assistant-trigger>span{display:none}
.assistant-trigger.assistant-trigger::after{content:'AI';position:absolute;right:-3px;bottom:-2px;display:grid;place-items:center;min-width:22px;height:18px;padding:0 3px;border:2px solid #d86b3c;border-radius:8px;background:#0f3d2e;color:#fff;font:600 10px/1 'DM Sans',sans-serif;letter-spacing:.02em}
.assistant-trigger.assistant-trigger:hover{background:#e37b4e;border-color:#e37b4e}
@media(max-width:800px){
 .scan-fab.scan-fab,.assistant-trigger.assistant-trigger{width:52px;height:52px;min-width:52px;bottom:calc(14px + env(safe-area-inset-bottom));padding:0;justify-content:center;border-radius:50%}
}
