@font-face{font-display:swap;font-family:PinkSans;src:url('assets/sans.woff')}@font-face{font-display:swap;font-family:PinkSans;src:url('assets/sans-bold.woff');font-weight:700}@font-face{font-display:swap;font-family:PinkMono;src:url('assets/mono.woff')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:#F4F0E8;color:#111114;font-family:PinkSans,Arial,sans-serif;line-height:1.5}a{color:inherit;text-underline-offset:.3em}button{font:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #273BDB;outline-offset:6px}.skip{position:fixed;top:-100px;background:#F4F0E8;z-index:50;padding:16px}.skip:focus{top:0}.review{padding:9px 4%;background:#111114;color:#F4F0E8;font-size:.8125rem;display:flex;justify-content:space-between;gap:20px}header{display:flex;align-items:center;gap:36px;padding:24px 4%;border-bottom:1px solid #111114;background:#F4F0E8;position:relative;z-index:10}.logo{display:block;width:150px;height:auto}nav{display:flex;gap:32px;margin-left:auto}nav a{text-decoration:none;font-size:1rem}nav a:hover{text-decoration:underline}#motion{border:1px solid #111114;background:transparent;padding:9px 13px;font-size:.875rem;border-radius:0}.hero{padding:64px 4% 0;display:grid;grid-template-columns:1.15fr 1fr;column-gap:7%;max-width:1800px;margin:auto}.eyebrow{font-family:PinkMono,monospace;font-size:.875rem;line-height:1.6;margin:0 0 30px}.hero-copy{padding:22px 0 0}h1{font-size:clamp(3.2rem,6.8vw,7.2rem);line-height:.99;letter-spacing:-.055em;font-weight:400;margin:0 0 38px}.value{position:relative;display:inline-block}.value svg{position:absolute;bottom:-10px;left:0;width:100%;height:14px;overflow:visible;fill:none;stroke:#ED167F;stroke-width:7;stroke-dasharray:350;stroke-dashoffset:0;animation:draw 1.3s ease-out both}.lead{font-size:clamp(1.125rem,1.55vw,1.4rem);max-width:510px;line-height:1.5;margin-bottom:30px}.button{display:inline-flex;gap:25px;align-items:center;background:#273BDB;color:white;padding:16px 22px;text-decoration:none;transition:background .2s}.button:hover{background:#192aa8}.text-link{display:block;font-size:1rem;margin:21px 0 30px;width:fit-content}.hero-photo{margin:0;min-width:0}.photo-window{height:clamp(420px,43vw,680px);position:relative;overflow:hidden}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:50% 60%;animation:arrive 1.8s ease-out both}.photo-line{position:absolute;left:0;bottom:17%;width:28%;height:5px;background:#ED167F;transform-origin:left;animation:line 1.4s ease-out both}figcaption{font-size:.875rem;display:flex;justify-content:space-between;gap:16px;padding:13px 0}figcaption span{font-size:.75rem;max-width:160px;text-align:right}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:24px;border-top:1px solid #111114;margin-top:40px;padding:19px 0;font-size:.875rem}.section{padding:120px 7%;scroll-margin-top:20px}.situations{background:#111114;color:#F4F0E8;display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:40px}.section-intro h2{font-size:clamp(2.2rem,3.7vw,4.4rem);font-weight:400;letter-spacing:-.035em;line-height:1.12;margin:0 0 28px}.section-intro>p:last-child{max-width:490px;font-size:1.125rem;line-height:1.65}.situation-list article{border-top:1px solid #78777a;display:flex;gap:26px;padding:30px 0 34px}.situation-list article:last-child{border-bottom:1px solid #78777a}.number{font-family:PinkMono,monospace;font-size:.875rem;padding-top:4px}.situation-list h3{font-size:clamp(1.5rem,2vw,2.1rem);line-height:1.2;font-weight:400;margin:0 0 17px}.situation-list p{max-width:420px;margin:0 0 18px;color:#F4F0E8;font-size:1.0625rem}.situation-list a{font-size:.9375rem;text-decoration-color:#ED167F;text-decoration-thickness:2px}.services{display:grid;grid-template-columns:.95fr 1.05fr;gap:7%}.services .eyebrow{color:#273BDB}details{border-top:1px solid #111114;scroll-margin-top:40px}details:last-child{border-bottom:1px solid #111114}summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:28px 1fr 22px;gap:20px;align-items:start;padding:25px 0;font-size:1.5rem;line-height:1.2}summary::-webkit-details-marker{display:none}.step{font-family:PinkMono,monospace;color:#273BDB;font-size:.875rem;margin-top:5px}summary small{display:block;font-size:.9375rem;margin-top:9px}.plus{width:20px;height:20px;position:relative;margin-top:4px}.plus:before,.plus:after{content:'';background:#111114;position:absolute;left:0;top:9px;width:20px;height:2px}.plus:after{transform:rotate(90deg)}details[open] .plus:after{transform:rotate(0)}.detail{margin-left:48px;padding:0 0 27px;font-size:1.0625rem}.detail p{margin:0 0 16px;max-width:530px}.detail p:last-child{margin-bottom:0}.outcome{border-left:3px solid #ED167F;padding-left:16px}.closing{grid-column:1/-1;margin:90px 0 0;text-align:center;font-size:clamp(2rem,3.8vw,4rem);line-height:1.2;letter-spacing:-.025em}.closing em{font-family:Georgia,serif;font-weight:400}footer{padding:30px 4%;border-top:1px solid #111114;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:.9375rem}footer p{margin:0 0 5px}footer img{height:auto;flex-shrink:0}.quiet *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.quiet{scroll-behavior:auto}@keyframes draw{from{stroke-dashoffset:350}to{stroke-dashoffset:0}}@keyframes arrive{from{transform:scale(1.045)}to{transform:scale(1)}}@keyframes line{from{transform:scaleX(0)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:900px){header{gap:20px}.hero{column-gap:5%;padding-top:35px}.hero h1{font-size:clamp(3rem,7.3vw,4.8rem)}.eyebrow{font-size:.8125rem}.section{padding:75px 5%;gap:6%}nav{gap:18px}.review{font-size:.75rem}figcaption{display:block}figcaption span{display:block;text-align:left;max-width:none;margin-top:4px}}@media(max-width:650px){html{scroll-padding-top:30px}header{flex-wrap:wrap;padding:18px 5%;gap:16px}.logo{width:122px}nav{order:3;width:100%;margin:0;justify-content:space-between;border-top:1px solid #c4c0b9;padding-top:15px}#motion{margin-left:auto;font-size:.8125rem}.review{padding:9px 5%;align-items:center}.review span{max-width:180px}.review a{white-space:nowrap}.hero{display:block;padding:35px 5% 0}.hero-copy{padding:0}.hero h1{font-size:clamp(3.4rem,13vw,5.5rem);margin-bottom:32px}.eyebrow{margin-bottom:23px}.hero-photo{margin-top:35px}.photo-window{height:440px}.hero-bottom{font-size:.8125rem;align-items:start}.hero-bottom span{max-width:175px}.hero-bottom a{max-width:120px;text-align:right}.situations,.services{display:block}.section-intro{margin-bottom:40px}.section-intro h2{font-size:2.3rem}.section{padding:65px 6%}.situation-list h3{font-size:1.6rem}.situation-list article{gap:18px}.closing{margin-top:65px}summary{gap:14px;font-size:1.3rem}.detail{margin-left:42px}footer{align-items:start;flex-direction:column;gap:20px}.button{padding:16px 18px;gap:16px}}

/* Entrada viva: movimento restrito à imagem, conteúdo estável. */
.hero-photo img{animation:perspective 22s ease-in-out infinite alternate;transform-origin:60% 70%;will-change:transform}
.photo-line{animation:relation 12s ease-in-out infinite alternate;width:34%}
.photo-frame{position:absolute;inset:16% 12% 22% 24%;border-top:1px solid #F4F0E8;border-right:1px solid #F4F0E8;pointer-events:none;animation:frame 16s ease-in-out infinite alternate}
.quiet .hero-photo img{transform:scale(1)}
.quiet .photo-line{transform:scaleX(1)}
.hero-out .hero-photo img,.hero-out .photo-line,.hero-out .photo-frame{animation-play-state:paused}
@keyframes perspective{from{transform:scale(1)}to{transform:scale(1.09)}}
@keyframes relation{0%,15%{transform:translateY(0) scaleX(.65)}85%,100%{transform:translateY(-28px) scaleX(1)}}
@keyframes frame{from{transform:translateY(0)}to{transform:translateY(14px)}}
@media(prefers-reduced-motion:reduce){.hero-photo img,.photo-line,.photo-frame{animation:none!important;transform:none!important}}

/* Aplicações e essência: conteúdo fluido, sem alturas que cortem texto. */
nav{flex-wrap:wrap;gap:16px 24px}header{gap:24px}.applications{border-top:1px solid #111114}.applications>.section-intro{max-width:940px}.applications>.section-intro>p:last-child{max-width:650px}.example-note{max-width:680px;font-size:.9375rem;margin:32px 0 48px;padding-left:18px;border-left:3px solid #273BDB}.application-list article{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:48px 0;border-top:1px solid #aaa69f}.application-list article:last-child{padding-bottom:0}.application-heading h3{font-size:clamp(1.8rem,2.8vw,3rem);line-height:1.13;font-weight:400;letter-spacing:-.025em;margin:22px 0}.application-heading>p,.application-body>p{font-size:1.125rem;max-width:540px}.application-body h4{font-size:1.0625rem;margin:5px 0 18px}.application-body>a{text-decoration-color:#ED167F;text-decoration-thickness:2px}.artifact{padding:20px 24px;border-left:4px solid #ED167F;margin:28px 0;background:#eae6df}.artifact .eyebrow{display:block;margin:0 0 12px}.artifact p{margin:0;font-size:1.0625rem}.essence{background:#111114;color:#F4F0E8}.essence-opening{display:grid;grid-template-columns:1fr 1fr;gap:9%}.essence-copy p{font-size:1.1875rem;line-height:1.65;margin:0 0 24px;max-width:560px}.values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 5%;margin-top:64px}.values article{border-top:1px solid #777579;padding-top:22px}.values h3{font-size:1.6rem;font-weight:400;margin:18px 0 12px}.values p{font-size:1.0625rem;margin:0;max-width:350px}.essence-signature{font-size:clamp(2rem,4vw,4.5rem);letter-spacing:-.025em;margin:70px 0 0;padding-top:30px;border-top:3px solid #ED167F;line-height:1.2}.next-step h2{font-size:clamp(2rem,3.8vw,4rem);font-weight:400;letter-spacing:-.025em;line-height:1.15;margin:0 0 28px}.next-step>p:not(.eyebrow){font-size:1.1875rem;max-width:640px}.application-list article,.values article{min-width:0}h2,h3,p{overflow-wrap:break-word}@media(max-width:1050px){header{flex-wrap:wrap}nav{order:3;width:100%;margin:0}#motion{margin-left:auto}}@media(max-width:650px){nav{justify-content:flex-start;gap:12px 22px}.application-list article,.essence-opening{display:block}.application-body{margin-top:30px}.values{grid-template-columns:1fr;gap:32px;margin-top:40px}.values p{max-width:none}.essence-signature{margin-top:48px}.application-list article{padding:35px 0}.artifact{padding:18px}.essence-copy p{font-size:1.125rem}}
[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero h1{font-size:clamp(2.8rem,5.7vw,6.4rem)}.hero-explanation{font-size:1.0625rem;max-width:530px}.hero .lead{margin-bottom:18px}.journey{border-top:1px solid #111114}.journey h2{font-size:clamp(2.2rem,4vw,4.6rem);font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:0 0 24px}.journey-intro{font-size:1.1875rem;line-height:1.65;max-width:730px}.moment-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:40px 0 70px}.moment-choice{text-align:left;border:1px solid #111114;background:transparent;color:#111114;padding:25px;font-size:1.25rem;line-height:1.4;min-width:0}.moment-choice span{display:block;font-family:PinkMono,monospace;font-size:.875rem;margin-bottom:22px}.moment-choice[aria-pressed=true]{background:#111114;color:#F4F0E8;border-bottom:5px solid #ED167F;padding-bottom:21px}.moment-choice:hover{outline:2px solid #273BDB;outline-offset:3px}.journey-panel h3{font-size:clamp(1.8rem,3.2vw,3.6rem);line-height:1.15;font-weight:400;letter-spacing:-.025em;max-width:940px;margin:0 0 25px}.evidence-list{max-width:900px;margin-top:35px}.observation{padding-bottom:65px}.relation{background:#111114;color:#F4F0E8;padding:55px clamp(22px,5vw,70px);--connection:0}.relation .example-note{border-left-color:#ED167F;margin:25px 0}.scenario{font-size:1.25rem;line-height:1.65;max-width:850px}.relation-nodes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:45px 0 35px;padding-bottom:25px;border-bottom:3px solid #ED167F;position:relative}.relation-nodes:after{content:'';position:absolute;bottom:-7px;left:calc(10% + var(--connection)*35%);width:11px;height:11px;background:#ED167F;border-radius:50%;transition:left .5s ease}.relation-nodes span{font-size:1.0625rem;border-top:1px solid #888;padding-top:18px}.relation-choices{display:flex;flex-wrap:wrap;gap:12px}.relation-choices button{background:transparent;border:1px solid #aaa;color:#F4F0E8;padding:13px 17px;font-size:1rem}.relation-choices button[aria-pressed=true]{background:#F4F0E8;color:#111114;border-color:#F4F0E8}.relation button:focus-visible{outline-color:#F4F0E8}.connection-readings{padding:28px 0}.connection-reading{font-size:clamp(1.4rem,2.3vw,2rem);line-height:1.4;max-width:820px;margin:0}.interpretation{border-top:1px solid #777;padding-top:25px;font-size:1.0625rem;max-width:850px;margin:0}.interpretation strong{display:block;margin-bottom:14px}.form-output{padding-top:65px}.output-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin:38px 0}.output-grid article{border-top:3px solid #273BDB;padding-top:20px;min-width:0}.output-grid h4{font-weight:400;font-size:1.6rem;line-height:1.2;margin:20px 0}.output-grid p{font-size:1.0625rem}.output-purpose{border-left:2px solid #ED167F;padding-left:15px}.services{border-top:1px solid #aaa69f}@media(max-width:700px){.moment-choices,.output-grid{grid-template-columns:1fr;gap:18px}.moment-choices{margin-bottom:45px}.moment-choice{padding:20px}.moment-choice[aria-pressed=true]{padding-bottom:16px}.moment-choice span{margin-bottom:10px}.relation{margin:0 -2%;padding:35px 6%}.relation-nodes{gap:12px}.relation-nodes span{font-size:.9375rem;overflow-wrap:anywhere}.relation-choices{flex-direction:column}.relation-choices button{text-align:left}.hero h1{font-size:clamp(2.5rem,10.8vw,4.5rem)}.form-output{padding-top:45px}.output-grid article{padding-bottom:16px}}
/* Método apresentado pela atuação da Pink.C, com entregas sempre visíveis. */
.investigation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:35px}.investigation-grid article{border-top:2px solid #273BDB;padding-top:20px;min-width:0}.investigation-grid h4{font-size:1.5rem;font-weight:400;margin:15px 0}.investigation-grid p{font-size:1.0625rem}.relation-choices{position:relative;padding-bottom:22px}.method-line{height:3px;background:#ED167F;position:absolute;left:0;right:0;bottom:0}.method-line:after{content:'';position:absolute;top:-4px;left:calc(8% + var(--connection)*40%);width:11px;height:11px;border-radius:50%;background:#ED167F;transition:left .4s ease}.connection-reading{font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.6}.service-showcase{display:block;background:#111114;color:#F4F0E8;padding:0}.service-opening{padding:85px 7%;background:#ED167F;color:#111114}.service-opening .eyebrow{color:#111114}.service-opening h2{font-size:clamp(2.4rem,4.5vw,5.5rem);line-height:1.1;font-weight:400;letter-spacing:-.035em;margin:0 0 32px}.service-opening h2 em{font-style:normal}.service-opening>p:not(.eyebrow){font-size:1.1875rem;max-width:670px}.service-stages{padding:0 7%}.service-stage{display:grid;grid-template-columns:.35fr 1.2fr 1fr;gap:5%;padding:55px 0;border-bottom:1px solid #777;scroll-margin-top:25px}.service-index>span{font-size:clamp(2.8rem,5vw,5rem);line-height:1;font-weight:400;letter-spacing:-.045em}.service-index p{font-family:PinkMono,monospace;font-size:.875rem;margin:15px 0}.service-promise h3{font-size:clamp(1.8rem,2.7vw,3rem);line-height:1.15;font-weight:400;letter-spacing:-.025em;margin:0 0 25px}.service-fit{font-size:1rem;max-width:380px}.service-description>p{font-size:1.125rem;line-height:1.65;margin:0 0 25px}.service-deliver{border-left:3px solid #ED167F;padding-left:18px}.service-deliver .eyebrow{color:#F4F0E8;margin:0;display:block}.service-deliver p{font-size:1rem;margin:12px 0 0}.service-scope{margin:0;padding:35px 7% 65px;font-size:1.0625rem;max-width:1050px}.service-stage:target{border-top:3px solid #ED167F}.essence{border-top:1px solid #777}@media(max-width:850px){.service-stage{grid-template-columns:80px 1fr;gap:24px}.service-description{grid-column:2}.service-index p{overflow-wrap:anywhere}}@media(max-width:650px){.investigation-grid{grid-template-columns:1fr;gap:18px}.service-opening{padding:55px 6%}.service-stages{padding:0 6%}.service-stage{grid-template-columns:1fr;gap:15px;padding:35px 0}.service-description{grid-column:auto}.service-index{display:flex;align-items:center;gap:20px}.service-index>span{font-size:2.5rem}.service-promise h3{margin:10px 0 20px}.service-scope{padding:30px 6% 50px}.service-opening h2{font-size:2.5rem}}
/* Leitura em camadas e acervo visual: junho de interface sem novo conteúdo. */
.method-disclosure{margin:24px 0;border-bottom:1px solid #aaa}.method-disclosure>summary{display:flex;justify-content:space-between;align-items:center;font-size:1.0625rem;padding:20px 0;gap:20px}.method-disclosure .investigation-grid{margin:10px 0 30px}.observation{padding-bottom:40px}.form-output{padding-top:40px}.form-output>.button{margin-top:12px}.journey-panel h3{font-size:clamp(1.8rem,2.8vw,3rem)}.relation-disclosure{border-color:#777}.relation-disclosure .plus:before,.relation-disclosure .plus:after{background:#F4F0E8}.relation-disclosure>summary:focus-visible{outline-color:#F4F0E8}.relation-disclosure .relation-choices{margin-top:10px}.relation .interpretation{border-top:0;padding-top:10px}.urban-pause{margin:0;position:relative;background:#111114;overflow:hidden}.urban-pause>img{width:100%;height:clamp(300px,40vw,560px);display:block;object-fit:cover;object-position:50% 65%}.urban-pause>figcaption{position:relative;display:flex;padding:22px 7%;color:#F4F0E8;border-top:4px solid #ED167F;align-items:center}.urban-pause small{font-size:.8125rem}.urban-pause figcaption>span{font-size:1.3rem}.service-explorer{display:grid;grid-template-columns:1fr 1.1fr;gap:6%;padding:60px 7%}.service-explorer .service-stages{padding:0;min-width:0}.service-card{border-top:1px solid #777;scroll-margin-top:30px}.service-card:last-child{border-bottom:1px solid #777}.service-card>summary{display:block;padding:27px 0}.service-number{display:block;font-family:PinkMono,monospace;font-size:.875rem;margin-bottom:16px}.service-title{display:block;font-size:clamp(1.65rem,2.2vw,2.5rem);line-height:1.15;letter-spacing:-.02em}.service-teaser{display:block;font-size:1rem;line-height:1.5;margin-top:18px}.service-key{display:block;font-size:.9375rem;line-height:1.5;margin-top:13px;color:#F4F0E8}.service-action{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:23px;font-size:.9375rem;text-decoration:underline;text-decoration-color:#ED167F;text-underline-offset:5px}.service-action .plus:before,.service-action .plus:after{background:#F4F0E8}.service-card[open]{border-top:3px solid #ED167F}.service-card[open] .service-action .plus:after{transform:rotate(0)}.service-expanded{padding:0 0 25px;font-size:1.0625rem;line-height:1.65}.service-expanded p{margin:0}.service-card summary:focus-visible,.study-button:focus-visible,.study-image-button:focus-visible{outline-color:#F4F0E8}.study-stage{align-self:start;position:sticky;top:30px;min-width:0}.study-figure{margin:0;animation:study-in .35s ease-out}.study-meta{display:flex;justify-content:space-between;font-family:PinkMono,monospace;font-size:.875rem;padding-bottom:18px}.study-image-button{display:block;padding:24px;background:#e0dcd4;border:0;width:100%;color:#111114;text-align:left}.study-image-button img{width:100%;height:auto;max-height:480px;object-fit:contain;display:block}.study-image-button>span{display:block;font-size:.875rem;margin-top:20px}.study-figure figcaption{display:block;padding:24px 0 0}.study-figure figcaption strong{font-size:1.5rem;font-weight:400;display:block;margin-bottom:12px}.study-figure figcaption span{font-size:1rem;max-width:none;text-align:left;display:block;line-height:1.6}.study-origin{font-size:.875rem;line-height:1.6;max-width:550px}.study-button{border:1px solid #F4F0E8;padding:12px 16px;background:transparent;color:#F4F0E8;margin-top:20px}.mobile-study{display:none}#study-dialog{background:#F4F0E8;color:#111114;border:0;width:min(96vw,1500px);max-width:96vw;max-height:94vh;padding:24px}#study-dialog::backdrop{background:rgba(0,0,0,.85)}.study-dialog-bar{display:flex;justify-content:space-between;align-items:center;gap:20px}.study-dialog-bar h2{font-size:1.4rem;font-weight:400;margin:0}.study-dialog-bar button{border:1px solid #111114;background:transparent;padding:10px 16px;flex-shrink:0}.study-dialog-scroll{overflow:auto;max-height:70vh}.study-dialog-scroll img{display:block;width:100%;min-width:850px;height:auto}#study-dialog>p{font-size:.9375rem;line-height:1.5}@keyframes study-in{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:900px){.service-explorer{display:flex;flex-direction:column;padding:40px 6%;gap:40px}.study-stage{position:static;order:-1}.study-image-button img{max-height:330px}.mobile-study{display:inline-block}.service-title{font-size:1.8rem}.study-figure figcaption strong{font-size:1.3rem}}@media(max-width:650px){.urban-pause>figcaption{display:block}.urban-pause small{display:block;margin-top:10px}.study-image-button{padding:15px}.service-opening{padding-bottom:40px}.study-dialog-bar{align-items:flex-start}#study-dialog{padding:16px}.study-dialog-bar h2{font-size:1.15rem}}
/* A fotografia participa da transformação: campo, seleção, relação e síntese. */
.brand-transition{display:grid;grid-template-columns:1fr 1fr;position:relative;background:#F4F0E8;color:#111114;margin:0;overflow:hidden}.transition-photo{position:relative;min-height:560px}.transition-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:45% 60%}.transition-frame{position:absolute;inset:18% 14% 24%;border-top:3px solid #F4F0E8;border-left:3px solid #F4F0E8}.transition-origin{position:absolute;left:14%;bottom:15%;background:#111114;color:#F4F0E8;padding:14px 20px;font-size:1rem}.transition-copy{padding:60px 12% 70px;position:relative}.transition-copy>img{height:auto;width:150px;margin-bottom:32px}.transition-copy h2{font-size:clamp(2rem,3.4vw,4rem);font-weight:400;letter-spacing:-.03em;line-height:1.12;margin:0 0 24px}.transition-copy>p:not(.eyebrow){font-size:1.125rem;line-height:1.65;max-width:450px}.transition-copy>a{display:inline-block;margin-top:20px;font-size:1.0625rem}.transition-connection{position:absolute;left:43%;width:14%;top:50%;height:5px;background:#ED167F;pointer-events:none}.transition-connection:after{content:'';width:13px;height:13px;background:#ED167F;position:absolute;right:0;top:-4px}.desire-scene{position:relative;min-height:580px;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;padding:34px;overflow:hidden;background:#F4F0E8;color:#111114}.desire-photo{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}.desire-copy{background:#F4F0E8;padding:26px;max-width:95%;margin-top:100px}.desire-copy .eyebrow{font-size:.875rem;margin:0 0 20px}.desire-copy h3{font-size:clamp(2rem,2.8vw,3.4rem);font-weight:400;letter-spacing:-.035em;line-height:1.1;margin:0}.desire-bracket{position:absolute;width:25%;height:75px;top:35px;left:34px;border-left:3px solid #273BDB;border-top:3px solid #273BDB}.desire-bridge{display:flex;align-items:center;gap:14px;background:#111114;color:#F4F0E8;padding:20px;margin-top:28px;font-size:1rem}.bridge-line{height:3px;background:#ED167F;flex:1;min-width:25px}.desire-figure>figcaption{font-size:1.0625rem;line-height:1.6;display:block;padding-top:22px}.desire-presence .desire-copy{border-left:6px solid #ED167F;margin-top:80px}.desire-offer .desire-copy{border-bottom:6px solid #ED167F}.desire-market .desire-copy{margin-top:130px}.desire-growth .desire-copy{margin-top:20px}.desire-growth .desire-bracket{top:auto;bottom:140px;left:auto;right:34px;border-color:#F4F0E8;border-left:0;border-right:3px solid #F4F0E8}.desire-growth .desire-photo{object-position:50% 65%}.desire-diagnostic .desire-photo{object-position:65% 50%}.desire-diagnostic .desire-bracket{width:36%;height:95px}.service-visual-stage{max-width:100%}@media(max-width:900px){.brand-transition{grid-template-columns:1fr}.transition-photo{min-height:320px}.transition-copy{padding:45px 7% 55px}.transition-connection{left:14%;top:290px;height:65px;width:5px}.transition-connection:after{top:auto;bottom:0;right:-4px}.desire-scene{min-height:480px}.service-visual-stage{order:0}.service-explorer{display:grid;grid-template-columns:1fr}.service-explorer .service-stages{order:1}.service-visual-stage{order:0}}@media(max-width:650px){.desire-scene{min-height:430px;padding:20px}.desire-copy{padding:21px;max-width:100%;margin-top:75px}.desire-copy h3{font-size:2rem}.desire-bracket{left:20px;top:20px;height:50px}.desire-bridge{padding:15px;gap:10px;font-size:.875rem}.desire-market .desire-copy{margin-top:80px}.transition-copy h2{font-size:2.3rem}.desire-figure>figcaption{font-size:1rem}}
@media(max-width:900px){.service-expanded .service-visual-stage{margin-top:28px}.service-expanded .desire-figure>figcaption{margin-bottom:10px}.service-expanded .desire-copy p{margin-bottom:20px}}
/* Conexão com área própria: fotografia e texto nunca compartilham o marcador. */
.brand-transition{grid-template-columns:minmax(0,1fr) clamp(48px,6vw,96px) minmax(0,1fr);overflow:visible}
.transition-photo{grid-column:1;grid-row:1;min-width:0}
.transition-copy{grid-column:3;grid-row:1;min-width:0;padding:60px clamp(24px,4vw,64px) 70px clamp(16px,2vw,32px)}
.transition-connection{position:relative;grid-column:2;grid-row:1;align-self:center;left:auto;right:auto;top:auto;bottom:auto;width:100%;height:5px;margin:0}
.transition-connection:after{top:50%;bottom:auto;right:0;transform:translateY(-50%)}
.transition-copy>img{max-width:100%}
@media(max-width:900px){
 .brand-transition{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 56px auto}
 .transition-photo{grid-column:1;grid-row:1}
 .transition-connection{grid-column:1;grid-row:2;align-self:stretch;justify-self:start;left:auto;top:auto;width:5px;height:100%;margin-left:7%}
 .transition-connection:after{top:auto;bottom:0;right:50%;transform:translateX(50%)}
 .transition-copy{grid-column:1;grid-row:3;padding:24px 7% 55px}
}
/* Movimento fotográfico contido no próprio campo, sem deslocar texto ou relação. */
.transition-photo{overflow:hidden;isolation:isolate}
.transition-photo>img{animation:transition-perspective 22s ease-in-out infinite alternate;transform-origin:45% 65%}
.transition-photo.transition-out>img{animation-play-state:paused}
.quiet .transition-photo>img{animation:none!important;transform:none}
@keyframes transition-perspective{from{transform:scale(1)}to{transform:scale(1.08)}}
@media(prefers-reduced-motion:reduce){.transition-photo>img{animation:none!important;transform:none!important}}
/* Valores: foco escolhido pelo visitante, relação e leitura em campo claro. */
.values-experience{margin-top:60px}.values-invitation{font-size:1.0625rem;margin:0 0 28px}.values-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,90px);align-items:start}.values-selector{display:flex;flex-direction:column;border-top:1px solid #777}.values-selector button{display:flex;align-items:center;gap:20px;position:relative;width:100%;text-align:left;border:0;border-bottom:1px solid #777;background:transparent;color:#F4F0E8;padding:25px 16px 25px 0;font-size:clamp(1.2rem,2vw,1.9rem);line-height:1.25;min-height:80px}.value-index{font-family:PinkMono,monospace;font-size:.875rem;flex-shrink:0}.values-selector button[aria-selected=true]{background:#F4F0E8;color:#111114;padding-left:20px;border-left:5px solid #ED167F}.values-selector button:focus-visible{outline:3px solid #F4F0E8;outline-offset:5px;z-index:2}.values-selector button:hover{background:#26262b;color:#F4F0E8}.values-selector button[aria-selected=true]:hover{background:#F4F0E8;color:#111114}.value-link{width:0;height:3px;background:#ED167F;flex-shrink:0;margin-left:auto;transition:width .35s ease}.values-selector button[aria-selected=true] .value-link{width:30px}.value-panels{min-width:0}.value-panel{background:#F4F0E8;color:#111114;padding:clamp(25px,3.5vw,50px);border-top:5px solid #ED167F;animation:value-arrival .4s ease-out;min-height:470px;position:relative}.value-panel-top{display:flex;justify-content:space-between;gap:20px;align-items:start}.value-panel-top .eyebrow{margin:0;font-size:.8125rem}.value-count{font-family:PinkMono,monospace;font-size:.8125rem;white-space:nowrap}.value-display-number{display:block;font-size:clamp(4rem,8vw,8rem);line-height:1;color:#273BDB;letter-spacing:-.06em;margin:30px 0 24px}.value-panel h3{font-size:clamp(1.65rem,2.5vw,2.7rem);line-height:1.15;font-weight:400;letter-spacing:-.025em;margin:0 0 22px;overflow-wrap:anywhere}.value-panel>p{font-size:1.1875rem;line-height:1.65;margin:0;max-width:520px}.value-panel-rule{width:70px;height:3px;background:#ED167F;margin-top:32px}.value-panel:focus-visible{outline:3px solid #F4F0E8;outline-offset:6px}.essence-copy{border-left:3px solid #ED167F;padding-left:28px}.essence-signature{margin-top:60px}.values-fallback{margin-top:30px}.values-selector button,.value-panel{scroll-margin-top:30px}@keyframes value-arrival{from{opacity:.55;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@media(max-width:750px){.values-layout{grid-template-columns:1fr;gap:28px}.values-selector button{font-size:1.25rem;padding-top:18px;padding-bottom:18px;min-height:64px}.value-panel{min-height:0;padding:28px}.value-display-number{font-size:4.5rem;margin:24px 0 20px}.value-panel>p{font-size:1.125rem}.essence-copy{padding-left:20px}.values-experience{margin-top:40px}}

/* Contact: approved editorial language, prepared for email activation. */
.contact-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(30px,6vw,90px);align-items:start}.contact-intro p{font-size:1.1875rem;line-height:1.65;max-width:520px}.contact-email{display:inline-block;margin-top:24px;font-size:1.125rem;overflow-wrap:anywhere}.contact-rule{display:block;width:90px;height:4px;background:#ED167F;margin-top:40px}.contact-surface{border-top:4px solid #ED167F;padding-top:28px;min-width:0}.contact-preview-note{padding:16px;border:1px solid #111114;font-size:.9375rem;line-height:1.6;margin:0 0 28px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px 20px}.contact-field{min-width:0}.contact-wide{grid-column:1/-1}.contact-field label{display:block;font-size:1rem;line-height:1.5;margin-bottom:9px}.contact-field label span{font-size:.875rem}.contact-field input,.contact-field select,.contact-field textarea{display:block;width:100%;min-width:0;border:1px solid #75736f;background:#fff;color:#111114;border-radius:0;padding:14px;font:inherit;font-size:1rem;line-height:1.5}.contact-field textarea{resize:vertical}.contact-field input:focus,.contact-field textarea:focus,.contact-field select:focus{outline:2px solid #273BDB;outline-offset:3px}.contact-purpose{font-size:.9375rem;line-height:1.6;margin:24px 0}.contact-surface .button{border:0;max-width:100%;white-space:normal;text-align:left}.contact-review{border-top:1px solid #111114;padding-top:24px}.contact-review h3{font-size:1.6rem;font-weight:400}.contact-review dl{overflow-wrap:anywhere}.contact-review dt{font-size:.875rem;margin-top:18px}.contact-review dd{margin:5px 0 0;font-size:1.0625rem;white-space:pre-wrap}.contact-review .button:disabled{background:#d5d2cc;color:#111114;cursor:not-allowed}.contact-edit{display:block;margin-top:20px;border:0;background:transparent;padding:10px 0;text-decoration:underline;text-underline-offset:5px}.contact-review:focus{outline:2px solid #273BDB;outline-offset:8px}@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:45px}}@media(max-width:600px){.contact-fields{grid-template-columns:1fr}.contact-surface .button{width:100%;justify-content:space-between}header nav{flex-wrap:wrap}}

/* v14: institutional orientation and deliberate return paths. */
.journey-summary{border-left:4px solid #ED167F;padding:8px 0 8px 24px;margin:0 0 44px;max-width:850px}.journey-summary .eyebrow{margin-bottom:16px}.journey-summary>p:not(.eyebrow){font-size:1.1875rem;line-height:1.65;margin:0 0 18px}.return-choices,.return-values{background:transparent;color:inherit;border:0;text-decoration:underline;text-underline-offset:5px;padding:12px 0;min-height:44px;font-size:1rem;text-align:left}.return-values{display:none;margin-top:22px}.journey-panel:focus-visible{outline:3px solid #273BDB;outline-offset:8px}.service-card[open] .service-action{font-weight:700}.relation-choices button[aria-pressed=true]{box-shadow:inset 0 -4px #ED167F}nav a{display:inline-flex;align-items:center;min-height:44px}#motion{min-height:44px;border-color:#75736f}.hero-explanation{line-height:1.65;margin-bottom:28px}.service-opening>p:not(.eyebrow){max-width:790px}.return-values:focus-visible{outline-color:#273BDB}.service-expanded .service-visual-stage{width:100%}
@media(max-width:750px){.return-values{display:block}.journey-summary{padding-left:18px;margin-bottom:32px}.journey-summary .eyebrow{font-size:.875rem}}
@media(max-width:650px){nav{gap:4px 20px;padding-top:8px}.desire-copy h3{font-size:clamp(1.5rem,7vw,2rem)}.desire-bridge{flex-wrap:wrap}.service-title br,.transition-copy h2 br{display:none}.service-title{line-height:1.25}.transition-copy h2{line-height:1.2}.value-panel-top{flex-wrap:wrap}.moment-choice{font-size:1.125rem}}

/* v17 — Campo, Evidência, Relação, Forma. Motion is confined to graphic layers. */
.photo-window .photo-frame{animation:hero-evidence 14s ease-in-out infinite;border-color:#F4F0E8;inset:16% 12% 22% 24%}
.photo-window .photo-line{animation:hero-connect 14s ease-in-out infinite;transform-origin:left}
@keyframes hero-evidence{0%,100%{transform:translate(-7px,8px);opacity:.55}25%,65%{transform:translate(7px,-8px);opacity:1}85%{transform:translate(-7px,8px);opacity:.55}}
@keyframes hero-connect{0%,20%,100%{transform:scaleX(.45);opacity:.65}42%,72%{transform:scaleX(1.35);opacity:1}90%{transform:scaleX(.45);opacity:.65}}
.motion-parts{position:absolute;top:38px;right:30px;width:94px;height:48px;pointer-events:none}
.motion-parts i{position:absolute;display:block;border:2px solid #F4F0E8;background:#111114;width:25px;height:25px;top:12px;animation:part-organize 9s ease-in-out infinite}
.motion-parts i:nth-child(1){left:0;--part-x:10px;--part-y:7px}
.motion-parts i:nth-child(2){left:33px;--part-x:-3px;--part-y:-9px;animation-delay:-.3s}
.motion-parts i:nth-child(3){left:66px;--part-x:-12px;--part-y:5px;animation-delay:-.6s;border-color:#ED167F}
@keyframes part-organize{0%,100%{transform:translate(var(--part-x),var(--part-y));opacity:.65}35%,75%{transform:translate(0,0);opacity:1}}
.desire-diagnostic .desire-bracket{animation:diagnostic-focus 10s ease-in-out infinite}
.desire-diagnostic .motion-parts{display:none}
@keyframes diagnostic-focus{0%,100%{transform:translate(0,0);opacity:.65}35%,70%{transform:translate(28px,12px);opacity:1}}
.desire-offer .desire-bracket{animation:architecture-align 9s ease-in-out infinite}
@keyframes architecture-align{0%,100%{transform:translateX(14px) scaleX(.8)}35%,75%{transform:translateX(0) scaleX(1)}}
.desire-presence .motion-parts i{animation-name:part-build;animation-duration:8s}
@keyframes part-build{0%,100%{transform:translateY(-8px);opacity:.35}30%,78%{transform:translateY(0);opacity:1}}
.desire-market .motion-parts{display:none}
.desire-market .desire-bracket{animation:validation-adjust 10s ease-in-out infinite}
@keyframes validation-adjust{0%,100%{transform:translateX(0)}45%,70%{transform:translateX(18px)}}
.bridge-line{position:relative}
.bridge-line:after{content:'';position:absolute;top:50%;left:0;width:8px;height:8px;background:#ED167F;transform:translateY(-50%);animation:bridge-pass 9s ease-in-out infinite}
@keyframes bridge-pass{0%,15%,100%{left:0}65%,80%{left:calc(100% - 8px)}}
.desire-market .bridge-line:after{animation-duration:6s}
.desire-growth .motion-parts{top:auto;bottom:145px}
.desire-growth .motion-parts i:nth-child(-n+2){animation:none}
.desire-growth .motion-parts i:last-child{animation:part-evolve 10s ease-in-out infinite}
@keyframes part-evolve{0%,100%{transform:translateY(9px)}40%,75%{transform:translateY(-7px)}}
.relation-motion{position:relative;height:44px;max-width:390px;margin:8px 0 24px;pointer-events:none}
.relation-track{position:absolute;left:10px;right:10px;top:21px;height:1px;background:#777579}
.relation-motion i{position:absolute;top:15px;width:13px;height:13px;border:1px solid #F4F0E8;background:#111114;transform:rotate(45deg)}
.relation-motion i:nth-of-type(1){left:4px}.relation-motion i:nth-of-type(2){left:calc(50% - 6px)}.relation-motion i:nth-of-type(3){right:4px}
.relation-signal{position:absolute;top:17px;width:9px;height:9px;background:#ED167F;left:calc(6px + var(--connection)* (50% - 10px));transition:left .55s ease;outline:5px solid #111114}
.relation-track:after{content:'';position:absolute;left:0;right:0;height:2px;background:#ED167F;transform-origin:left;animation:relation-trace 10s ease-in-out infinite}
@keyframes relation-trace{0%,100%{transform:scaleX(.08);opacity:.4}45%,65%{transform:scaleX(1);opacity:.8}}
.brand-motion{max-width:400px;margin-top:36px}
.brand-motion svg{display:block;width:100%;height:auto;overflow:hidden}
.brand-field{stroke:#777579;stroke-width:1;animation:brand-field 14s ease-in-out infinite}
.brand-focus{stroke:#ED167F;stroke-width:3;animation:brand-focus 14s ease-in-out infinite}
.brand-link{stroke:#ED167F;stroke-width:2;stroke-dasharray:136;animation:brand-link 14s ease-in-out infinite}
.brand-signal{fill:#ED167F;animation:brand-signal 14s ease-in-out infinite}
.brand-form{stroke:#F4F0E8;stroke-width:2;}
.brand-form path{animation:brand-form 14s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.brand-motion-labels{display:flex;justify-content:space-between;gap:16px;font-family:PinkMono,monospace;font-size:.6875rem;color:#F4F0E8}
@keyframes brand-field{0%,100%{transform:translateX(0)}25%,75%{transform:translateX(7px)}}
@keyframes brand-focus{0%,100%{transform:translate(-12px,8px);opacity:.5}25%,80%{transform:translate(0,0);opacity:1}}
@keyframes brand-link{0%,25%,100%{stroke-dashoffset:136}55%,85%{stroke-dashoffset:0}}
@keyframes brand-signal{0%,25%,100%{transform:translateX(0)}55%,85%{transform:translateX(134px)}}
@keyframes brand-form{0%,35%,100%{transform:scale(.88);opacity:.4}65%,85%{transform:scale(1);opacity:1}}
.motion-offscreen *, .motion-offscreen *:before,.motion-offscreen *:after{animation-play-state:paused!important}
.quiet *,.quiet *:before,.quiet *:after{animation:none!important;transition:none!important}
@media(max-width:650px){
 .motion-parts{top:23px;right:20px;transform:scale(.8);transform-origin:top right}
 .desire-growth .motion-parts{top:auto;bottom:145px}
 .brand-motion{max-width:300px;margin:24px 0 36px}
 .relation-motion{max-width:280px}
 @keyframes diagnostic-focus{0%,100%{transform:translate(0,0);opacity:.65}35%,70%{transform:translate(14px,6px);opacity:1}}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.brand-link{stroke-dashoffset:0}}
/* Evolução mantém a área de leitura livre; o gesto fica no enquadramento existente. */
.desire-growth .motion-parts{display:none}
.desire-growth .desire-bracket{animation:part-evolve 10s ease-in-out infinite}

/* v18 — readable captions and explicit device motion preference. */
.brand-motion-labels{font-size:.8125rem;line-height:1.5;flex-wrap:wrap}
#motion:disabled{cursor:default;max-width:250px;color:#111114;opacity:1;border-color:#777579;text-align:left}

/* v19: one directed opening sequence, then a quiet photographic field. */
.hero-cinema{isolation:isolate;background:#111114}
.hero-cinema .cinema-base{position:absolute;inset:0;object-position:50% 60%;animation:cinema-atmosphere 26s 9s ease-in-out infinite alternate;transform:scale(1.025);opacity:.78}
.hero-cinema .cinema-plane{position:absolute;inset:0;pointer-events:none;animation:cinema-plane-in 2.2s cubic-bezier(.22,1,.36,1) both}
.hero-cinema .cinema-plane-image{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 60%;animation:none;transform:none}
.cinema-plane-0{clip-path:polygon(0 0,34% 0,34% 100%,0 100%);--arrival:-18%;animation-delay:.1s!important}
.cinema-plane-1{clip-path:polygon(34% 0,68% 0,68% 100%,34% 100%);--arrival:24%;animation-delay:.3s!important}
.cinema-plane-2{clip-path:polygon(68% 0,100% 0,100% 100%,68% 100%);--arrival:-13%;animation-delay:.55s!important}
@keyframes cinema-plane-in{0%{transform:translateY(var(--arrival));opacity:0}65%{opacity:1}100%{transform:translateY(0);opacity:0}}
.hero-cinema .cinema-detail{position:absolute;z-index:2;left:44%;top:14%;width:46%;height:43%;overflow:hidden;background:#111114;border:1px solid #F4F0E8;box-shadow:0 16px 40px #11111455;animation:cinema-evidence 3.2s 1.5s cubic-bezier(.22,1,.36,1) both}
.hero-cinema .cinema-detail img{display:block;width:100%;height:100%;object-fit:cover;object-position:35% 42%;transform:scale(1.65);animation:cinema-detail-focus 3.2s 1.5s cubic-bezier(.22,1,.36,1) both}
.cinema-detail-mark{position:absolute;left:0;top:0;bottom:0;width:6px;background:#ED167F}
@keyframes cinema-evidence{0%{clip-path:inset(0 100% 0 0);transform:translate(-18%,12%)}45%{clip-path:inset(0 0 0 0)}100%{clip-path:inset(0 0 0 0);transform:translate(0,0)}}
@keyframes cinema-detail-focus{from{transform:scale(2);filter:contrast(1.15)}to{transform:scale(1.65);filter:contrast(1)}}
.cinema-connection{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;overflow:visible}
.cinema-connection path{fill:none;stroke:#ED167F;stroke-width:.65;stroke-dasharray:1;stroke-dashoffset:0;animation:cinema-connect 2.3s 3.8s cubic-bezier(.65,0,.35,1) both}
.cinema-connection circle{fill:#ED167F;animation:cinema-resolve .65s 5.8s both;transform-box:fill-box;transform-origin:center}
@keyframes cinema-connect{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes cinema-resolve{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}
.cinema-register{position:absolute;left:6%;top:5%;right:6%;z-index:4;display:flex;flex-wrap:wrap;gap:8px 12px;color:#F4F0E8;font-family:PinkMono,monospace;font-size:.6875rem;line-height:1.5;text-shadow:0 1px 4px #111114}
.cinema-register span{background:#111114;padding:4px 7px;animation:cinema-label .8s both}
.cinema-register span:nth-child(2){animation-delay:1.7s}.cinema-register span:nth-child(3){animation-delay:3.8s}.cinema-register span:nth-child(4){animation-delay:6s}
@keyframes cinema-label{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.cinema-signature{position:absolute;left:6%;bottom:7%;width:40%;padding:16px 20px;background:#F4F0E8;z-index:4;border-top:4px solid #ED167F;animation:cinema-signature 1.6s 6s cubic-bezier(.22,1,.36,1) both}
.hero-cinema .cinema-signature img{display:block;position:static;width:100%;height:auto;object-fit:contain;animation:none;transform:none}
@keyframes cinema-signature{from{clip-path:inset(0 100% 0 0);transform:translateX(-14px)}to{clip-path:inset(0 0 0 0);transform:translateX(0)}}
@keyframes cinema-atmosphere{from{transform:scale(1.025)}to{transform:scale(1.07)}}
.hero-out .hero-cinema *{animation-play-state:paused!important}
.quiet .hero-cinema .cinema-plane{opacity:0}
.quiet .hero-cinema .cinema-base{transform:scale(1.025)}
@media(max-width:650px){
 .hero-cinema{height:480px}
 .cinema-register{left:5%;right:5%;gap:6px;font-size:.625rem}
 .cinema-register span{padding:4px 5px}
 .hero-cinema .cinema-detail{left:41%;width:49%;top:17%;height:40%}
 .cinema-signature{left:6%;width:44%;padding:12px 15px}
 .hero-cinema .cinema-plane{--arrival:10%}
}
@media(prefers-reduced-motion:reduce){
 .hero-cinema .cinema-plane{opacity:0}
 .hero-cinema .cinema-base{transform:scale(1.025)!important}
 .hero-cinema .cinema-detail img{transform:scale(1.65)!important}
}
.cinema-register{font-size:.75rem}
@media(max-width:650px){.cinema-register{font-size:.75rem;gap:5px}.cinema-register span{padding:3px 4px}}

/* Approved brand film: optional opening, never a loading requirement. */
#brand-intro:not([open]){display:none}
#brand-intro{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#111114;color:#F4F0E8;overflow:hidden;opacity:1;transition:opacity .32s ease}
#brand-intro::backdrop{background:#111114;transition:opacity .32s ease}
#brand-intro.is-leaving,#brand-intro.is-leaving::backdrop{opacity:0}
#intro-video{width:100%;height:100%;object-fit:contain;display:block}
#intro-skip{position:absolute;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));background:#111114;color:#F4F0E8;border:1px solid #777579;padding:13px 18px;min-height:48px;font:14px PinkSans,Arial,sans-serif}
#intro-skip:focus-visible{outline:3px solid #F4F0E8;outline-offset:5px}
#intro-replay{background:transparent;color:inherit;border:0;border-bottom:1px solid currentColor;padding:12px 0;font:inherit;min-height:44px}
#intro-replay:disabled{opacity:.6;cursor:default}
html.intro-active{overflow:hidden}
.intro-active body>*:not(#brand-intro) *,.intro-active body>*:not(#brand-intro) *:before,.intro-active body>*:not(#brand-intro) *:after{animation-play-state:paused!important}
#hero-title:focus{outline:none}
@media(prefers-reduced-motion:reduce){#brand-intro,#brand-intro::backdrop{transition:none!important}}

/* v22 — editorial sequences: detail, assembly, resolution, rest. */
.front-motion{position:absolute;top:20px;left:24px;right:24px;height:150px;overflow:hidden;background:#111114;color:#F4F0E8}
.front-motion svg{display:block;width:100%;height:100%}
.scene-camera{transform-origin:300px 85px}
.scene-field{stroke:#777579;stroke-width:1.5}
.scene-plane{stroke:#F4F0E8;stroke-width:2;fill:#111114}
.scene-focus{stroke:#273BDB;stroke-width:4}
.scene-link{stroke:#ED167F;stroke-width:3;stroke-dasharray:1;stroke-dashoffset:0;fill:none}
.scene-result{stroke:#F4F0E8;stroke-width:3;fill:#111114;transform-box:fill-box;transform-origin:center}
.desire-scene .desire-copy{margin-top:158px}
.desire-scene .desire-photo,.desire-scene .bridge-line:after,.brand-motion svg *,.relation-track:after{animation:none}
.desire-scene .bridge-line:after{left:calc(100% - 8px)}
.brand-motion{max-width:460px}
.brand-motion svg{min-height:155px}
.brand-form path{opacity:1}
.relation-motion{height:60px;max-width:480px}
.relation-track{top:29px}.relation-motion i{top:23px}.relation-signal{top:25px}
.relation-track:after{transform:scaleX(1)}
.sequence-play .scene-camera{animation:front-camera 2.8s cubic-bezier(.22,1,.36,1) both}
.sequence-play .scene-plane{animation:front-assemble 1.7s .35s cubic-bezier(.22,1,.36,1) both}
.sequence-play .scene-plane.two{animation-delay:.65s}.sequence-play .scene-plane.three{animation-delay:.95s}
.sequence-play .scene-focus{animation:front-focus 1.4s .55s cubic-bezier(.22,1,.36,1) both}
.sequence-play .scene-link{animation:front-connect 1.25s 1.25s cubic-bezier(.65,0,.35,1) both}
.sequence-play .scene-result{animation:front-resolve .7s 2.25s cubic-bezier(.22,1,.36,1) both}
.sequence-play .desire-photo{animation:front-photo 3s cubic-bezier(.22,1,.36,1) both}
@keyframes front-camera{from{transform:translate(-22px,9px) scale(1.5)}to{transform:translate(0,0) scale(1)}}
@keyframes front-assemble{from{transform:translate(0,25px);opacity:.15}to{transform:translate(0,0);opacity:1}}
@keyframes front-focus{from{transform:translate(35px,0);opacity:0}to{transform:translate(0,0);opacity:1}}
@keyframes front-connect{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes front-resolve{from{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}
@keyframes front-photo{from{transform:scale(1.06)}to{transform:scale(1)}}
.desire-diagnostic .scene-camera{transform-origin:170px 85px}
.desire-market .scene-camera{transform-origin:485px 85px}
.desire-growth .scene-camera{transform-origin:190px 85px}
.desire-growth .sequence-play .scene-plane{animation-delay:1.2s}
.sequence-play .relation-track:after{animation:relation-resolve 1.5s cubic-bezier(.65,0,.35,1) both}
.sequence-play .relation-motion i{animation:relation-node .7s .25s both}
.sequence-play .relation-motion i:nth-of-type(2){animation-delay:.55s}.sequence-play .relation-motion i:nth-of-type(3){animation-delay:.85s}
@keyframes relation-resolve{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes relation-node{from{opacity:.2}to{opacity:1}}
.sequence-play .brand-motion svg{animation:brand-camera 3s cubic-bezier(.22,1,.36,1) both;transform-origin:24% 56%}
.sequence-play .brand-field{animation:brand-field-arrive 1.6s both}
.sequence-play .brand-focus{animation:front-focus 1.3s .3s both}
.sequence-play .brand-link{animation:brand-link-arrive 1.4s 1s both}
.sequence-play .brand-signal{animation:brand-signal-arrive 1.4s 1s both}
.sequence-play .brand-form path{animation:front-resolve .8s 2s both}
.brand-motion{overflow:hidden}
.brand-signal{transform:translateX(134px)}
@keyframes brand-camera{from{transform:scale(1.65)}to{transform:scale(1)}}
@keyframes brand-field-arrive{from{opacity:.2}to{opacity:1}}
@keyframes brand-link-arrive{from{stroke-dashoffset:136}to{stroke-dashoffset:0}}
@keyframes brand-signal-arrive{from{transform:translateX(0)}to{transform:translateX(134px)}}
@media(max-width:650px){.front-motion{left:20px;right:20px;height:125px;top:20px}.desire-scene .desire-copy{margin-top:135px}.brand-motion{max-width:340px}.relation-motion{max-width:100%}}
.quiet .sequence-play *,.quiet .sequence-play *:after{animation:none!important}
@media(prefers-reduced-motion:reduce){.sequence-play *,.sequence-play *:after{animation:none!important}}


/* v24 — one expressive arrival, followed by continuous graphic life. */
.essence-opening.sequence-play .brand-motion svg{animation:principles-arrival 3.2s cubic-bezier(.22,1,.36,1) both;transform-origin:24% 56%}
.essence-opening.sequence-play .brand-field{animation:brand-field-arrive 1.6s both,principles-field 12s 3.6s ease-in-out infinite}
.essence-opening.sequence-play .brand-focus{animation:front-focus 1.3s .3s both,principles-focus 12s 3.6s ease-in-out infinite}
.essence-opening.sequence-play .brand-link{animation:brand-link-arrive 1.4s 1s both,principles-link 12s 3.6s ease-in-out infinite}
.essence-opening.sequence-play .brand-signal{animation:brand-signal-arrive 1.4s 1s both,principles-signal 12s 3.6s ease-in-out infinite}
.essence-opening.sequence-play .brand-form path{animation:front-resolve .8s 2s both,principles-form 12s 3.6s ease-in-out infinite}
@keyframes principles-arrival{0%{transform:scale(2.3);clip-path:inset(0 58% 0 0)}45%{clip-path:inset(0 0 0 0)}100%{transform:scale(1);clip-path:inset(0 0 0 0)}}
@keyframes principles-field{0%,100%{transform:translateX(0)}25%,55%{transform:translateX(8px)}}
@keyframes principles-focus{0%,100%{transform:translate(0,0)}25%,40%{transform:translate(9px,-6px)}65%,80%{transform:translate(0,0)}}
@keyframes principles-link{0%,100%{stroke-dashoffset:0}25%,35%{stroke-dashoffset:136}65%,85%{stroke-dashoffset:0}}
@keyframes principles-signal{0%,100%{transform:translateX(134px)}25%,35%{transform:translateX(0)}65%,85%{transform:translateX(134px)}}
@keyframes principles-form{0%,100%{transform:scale(1);opacity:1}25%,45%{transform:scale(.94);opacity:.65}70%,85%{transform:scale(1);opacity:1}}
.quiet .essence-opening .brand-motion *{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.essence-opening .brand-motion *{animation:none!important;transition:none!important}}

/* Continuous film-to-signature handoff: one wordmark, one gesture. */
.signature-scene{position:relative;isolation:isolate;overflow:hidden;margin-top:70px;border-top:3px solid #ED167F;min-height:clamp(280px,36vw,500px);display:grid;place-items:center;background:#111114}
.signature-final{position:relative;z-index:1;width:100%;box-sizing:border-box;padding:48px 4%}
.signature-logo{position:relative;z-index:2;display:block;width:clamp(140px,18vw,230px);height:auto;margin:0 0 28px;transform-origin:0 0}
.signature-scene .essence-signature{position:relative;width:100%;border:0;padding:0;margin:0;font-size:clamp(2.9rem,7.4vw,7.8rem);line-height:1.04;letter-spacing:-.045em}
.signature-line{display:block}
.signature-value{position:relative;display:inline-block}
.signature-value:after{content:'';position:absolute;left:0;right:0;bottom:-.1em;height:4px;background:#ED167F;transform-origin:left}
.signature-film{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;opacity:0;z-index:2;background:#111114}
.signature-scene.is-running .signature-film{opacity:1}
.signature-scene.is-running .signature-final{opacity:0}
.signature-scene.is-resolving .signature-line{animation:signature-text-in .58s .06s cubic-bezier(.22,1,.36,1) both}
.signature-scene.is-resolving .signature-value:after{animation:signature-rule .48s .18s cubic-bezier(.65,0,.35,1) both}
@keyframes signature-text-in{from{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}
@keyframes signature-rule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:650px){.signature-scene{margin-top:48px;min-height:280px}.signature-final{padding:38px 0}.signature-logo{margin-bottom:24px}.signature-scene .essence-signature{font-size:clamp(2.6rem,10vw,4rem)}}
.quiet .signature-scene *,.quiet .signature-scene *:after{animation:none!important}
@media(prefers-reduced-motion:reduce){.signature-scene *,.signature-scene *:after{animation:none!important}}

/* Final contact states share the institutional identity. */
.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact-success{padding:32px;background:#111114;color:#F4F0E8;border-top:4px solid #ED167F}
.contact-success>img{display:block;width:180px;height:auto;margin-bottom:28px}
.contact-success .eyebrow{color:#F4F0E8}.contact-success h3{font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.15}
.contact-success p{line-height:1.6}.contact-success .contact-reference{font-size:.8125rem;overflow-wrap:anywhere}
.contact-signature{border-top:1px solid #777579;padding-top:24px;font-size:1.5rem}
#contact-error{padding:16px;border-left:4px solid #b3145b;background:#F4F0E8;color:#111114;line-height:1.5}

/* Mobile typography review — 2026-10-02. Copy preserved. */
@media(max-width:650px){
 .hero-copy,.contact-intro,.transition-copy,.service-content,.service-summary,.essence-opening>div{min-width:0}
 .hero h1{font-size:clamp(2rem,9.7vw,4rem)}
 .journey h2,.journey-panel h3,.service-opening h2,.transition-copy h2,.essence-opening h2,.next-step h2{word-break:normal;overflow-wrap:normal;hyphens:none}
 .journey h2 br,.journey-panel h3 br,.service-opening h2 br,.transition-copy h2 br,.essence-opening h2 br,.next-step h2 br{display:none}
 .service-title{font-size:clamp(1.45rem,6.4vw,1.8rem);word-break:normal;overflow-wrap:normal;hyphens:none}
 .value-panel h3{word-break:normal;overflow-wrap:normal;hyphens:none;font-size:clamp(1.45rem,6vw,1.75rem)}
 .button,nav a,.moment-choice,.values-selector button{max-width:100%;white-space:normal;word-break:normal}
 .button{min-width:0}.button>span[aria-hidden=true]{flex-shrink:0}
 .contact-email{max-width:100%;overflow-wrap:anywhere}
 .contact-field input,.contact-field select,.contact-field textarea{font-size:1rem}
}

/* Consolidation 2026-10-02 */
.transition-photo>img{object-position:45% 100%;transform-origin:45% 100%}.transition-origin{top:7%;bottom:auto}
.social-contact,.social-footer,.contact-email{display:inline-flex;align-items:center;gap:14px;max-width:100%;min-height:48px;text-decoration:none;border-bottom:2px solid #ED167F;padding:10px 0}.social-contact{display:flex;width:fit-content;margin-top:20px}.social-contact small{display:block;font-size:13px}.social-contact>span{font-size:18px}.social-contact svg,.social-footer svg,.social-arrow{flex-shrink:0}.contact-email>span:first-child{min-width:0;overflow-wrap:anywhere}.social-arrow{display:inline-block;transition:transform .2s cubic-bezier(.2,.7,.2,1)}
a,button,summary{transition:background-color .2s,color .2s,border-color .2s}button:disabled{cursor:default}
.button::after{content:'→';display:inline-block;margin-left:8px;transition:transform .2s}.button>span[aria-hidden=true]:empty{display:none}.return-choices::before,.return-values::before{content:'←';display:inline-block;margin-right:8px;transition:transform .2s}
@media(hover:hover) and (pointer:fine){.button:not(:disabled):hover::after{transform:translateX(3px)}.return-choices:hover::before,.return-values:hover::before{transform:translateX(-3px)}.social-contact:hover .social-arrow,.social-footer:hover .social-arrow,.contact-email:hover .social-arrow{transform:translate(2px,-2px)}.social-contact:hover,.social-footer:hover,.contact-email:hover{color:#273BDB}}
.button:focus-visible::after{transform:translateX(3px)}.return-choices:focus-visible::before,.return-values:focus-visible::before{transform:translateX(-3px)}.social-contact:focus-visible .social-arrow,.social-footer:focus-visible .social-arrow,.contact-email:focus-visible .social-arrow{transform:translate(2px,-2px)}
button:not(:disabled):active,summary:active{filter:brightness(.92)}.button:not(:disabled):active::after{transform:translateY(1px)}.plus::after,.service-more::after{transition:transform .2s}
.contact-field input,.contact-field textarea,.contact-field select{min-height:48px;font-size:16px;transition:border-color .18s,box-shadow .18s,background-color .18s;box-shadow:inset 0 -2px 0 transparent}.contact-field label{transition:color .18s}.contact-field:focus-within label{color:#273BDB}.contact-field input:focus,.contact-field textarea:focus,.contact-field select:focus{border-color:#273BDB;box-shadow:inset 0 -2px 0 #273BDB;background:#fffdf8}.contact-field [aria-invalid=true]{border-color:#982828;box-shadow:inset 0 -2px 0 #982828}.field-error{font-size:14px;color:#982828;margin:8px 0 0}.field-error:empty{display:none}
.quiet .button::after,.quiet .return-choices::before,.quiet .return-values::before,.quiet .social-arrow{transform:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.button::after,.return-choices::before,.return-values::before,.social-arrow{transform:none!important;transition:none!important}}

/* Avoid scroll anchoring while switching the expanded mobile service. */
@media(max-width:900px){.service-explorer{overflow-anchor:none}.service-visual-stage:focus{outline:none}}

/* Revision C: selected service in the mobile top layer. */
#service-dialog:not([open]){display:none}
#service-dialog{position:fixed;inset:0;margin:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;padding:0;border:0;background:#F4F0E8;color:#111114;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
#service-dialog::backdrop{background:#111114b3}
.service-dialog-bar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#F4F0E8;border-bottom:1px solid #111114;padding:calc(14px + env(safe-area-inset-top)) 6% 14px}
#service-dialog-title{font:14px PinkMono,monospace;margin:0}
#service-dialog-close{background:#111114;color:#F4F0E8;border:0;padding:12px 14px;min-height:44px;white-space:nowrap;font-size:14px}
#service-dialog-close:focus-visible{outline:3px solid #273BDB;outline-offset:3px}
#service-dialog-content{padding:20px 6% 0}
#service-dialog .service-visual-stage{width:100%;margin:0;position:static;top:auto}
#service-dialog .study-figure{margin:0}
#service-dialog .desire-scene{min-height:clamp(310px,58svh,480px)}
#service-dialog-description{margin:0;padding:8px 6% calc(28px + env(safe-area-inset-bottom));font-size:16px;line-height:1.6}
html.service-modal-active{overflow:hidden}
.intro-fallback-art{display:none;position:absolute;inset:0;align-items:center;justify-content:center;overflow:hidden;background:#111114}
.intro-fallback-art img{width:min(76%,800px);height:auto;position:relative;z-index:1}
.intro-fallback .intro-fallback-art{display:flex}
.intro-fallback #intro-video{visibility:hidden}
.intro-fallback .intro-fallback-art img{animation:intro-logo-resolve 1.6s cubic-bezier(.22,1,.36,1) both}
.intro-fallback-art:before{content:'';position:absolute;inset:0;background:#ED167F;transform-origin:left;animation:intro-signal-pass 1.5s cubic-bezier(.22,1,.36,1) both}
#intro-skip{z-index:3}
@keyframes intro-logo-resolve{0%{opacity:0;transform:translateY(35px) scale(.88);filter:blur(10px)}45%{opacity:1}100%{opacity:1;transform:none;filter:none}}
@keyframes intro-signal-pass{0%{transform:scaleX(0)}35%{transform:scaleX(1)}100%{transform:translateX(105%)}}
@media(prefers-reduced-motion:reduce){.intro-fallback-art img,.intro-fallback-art:before{animation:none!important}}

.copy-email-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 0}.copy-email-row button{background:transparent;border:1px solid #75736f;color:#111114;font:inherit;font-size:14px;padding:10px 14px;min-height:44px}.copy-email-row [role=status]{font-size:14px;max-width:100%;overflow-wrap:anywhere}
