@font-face{font-family:Manrope;src:url('/assets/fonts/Manrope-Variable.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
    :root{--black:#111315;--white:#FAFAF9;--paper:#fff;--yellow:#eacb35;--steel:#74797d;--grey:#dbdedc;--ink:#191b1d;--max:1280px;--radius:14px;--ease:cubic-bezier(.2,.8,.2,1);--header:80px}
    *{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 16px);overflow-x:clip}body{margin:0;background:var(--white);color:var(--ink);font-family:Manrope,Aptos,Arial,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:clip}body.is-locked{overflow:hidden}img,svg{display:block;max-width:100%}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}a{color:inherit}.po-skip{position:fixed;z-index:1000;top:10px;left:10px;transform:translateY(-160%);background:var(--yellow);color:var(--black);padding:12px 16px;border-radius:8px;font-weight:800}.po-skip:focus{transform:none}.po-wrap{width:min(calc(100% - 64px),var(--max));margin-inline:auto}.po-section{padding:clamp(88px,10vw,144px) 0}.po-section--tight{padding:clamp(64px,7vw,104px) 0}.po-eyebrow{margin:0 0 18px;text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;font-weight:800;color:var(--steel)}.po-eyebrow--yellow{color:var(--yellow)}.po-kicker{display:inline-flex;align-items:center;gap:10px}.po-kicker:before{content:"";width:22px;height:2px;background:var(--yellow)}.po-display{margin:0;font-size:clamp(3.65rem,6.15vw,5.9rem);line-height:.92;letter-spacing:-.058em;font-weight:650}.po-h2{margin:0;font-size:clamp(2.35rem,4.6vw,4.85rem);line-height:.98;letter-spacing:-.05em;font-weight:620;max-width:950px}.po-h3{margin:0;font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.14;letter-spacing:-.025em}.po-lead{font-size:clamp(1.05rem,1.45vw,1.28rem);line-height:1.6;color:#4d5255;max-width:720px}.po-dark{background:var(--black);color:var(--white)}.po-dark .po-lead{color:#b9bebc}.po-yellow-text{color:var(--yellow)}.po-btn{min-height:52px;padding:14px 20px;border:1px solid transparent;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;font-weight:750;cursor:pointer;transition:transform .22s var(--ease),background .22s,color .22s,border-color .22s}.po-btn:hover{transform:translateY(-2px)}.po-btn--primary{background:var(--yellow);color:var(--black)}.po-btn--primary:hover{background:#f1d755}.po-btn--outline{border-color:#4a4f50;color:var(--white);background:transparent}.po-btn--outline:hover{border-color:#888;color:var(--white)}.po-btn--ink{background:var(--black);color:var(--white)}.po-btn--text{padding:8px 0;min-height:44px;border-radius:0;background:none}.po-arrow{font-size:1.25em;line-height:1}.po-focus:focus-visible,.po-btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}.po-header{position:fixed;z-index:100;inset:0 0 auto;height:var(--header);background:rgba(17,19,21,.94);border-bottom:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.po-header__inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.po-logo{display:inline-flex;align-items:center}.po-logo img{width:146px;height:auto}.po-nav{display:flex;align-items:center;gap:clamp(18px,2.2vw,34px)}.po-nav a{font-size:.85rem;font-weight:650;text-decoration:none;color:#d9dcda;white-space:nowrap}.po-nav a:hover{color:var(--yellow)}.po-nav .po-btn{font-size:.83rem;min-height:44px;padding:10px 16px;background:transparent;color:var(--white);border-color:#555a5b}.po-nav .po-btn:hover{border-color:var(--yellow)}.po-menu{display:none;width:48px;height:48px;border:1px solid #414547;background:transparent;color:white;border-radius:50%;align-items:center;justify-content:center}.po-menu span,.po-menu span:before,.po-menu span:after{display:block;width:18px;height:1.5px;background:currentColor;content:"";transition:transform .25s,opacity .25s}.po-menu span:before{transform:translateY(-6px)}.po-menu span:after{transform:translateY(4.5px)}.po-menu[aria-expanded="true"] span{background:transparent}.po-menu[aria-expanded="true"] span:before{background:currentColor;transform:translateY(1px) rotate(45deg)}.po-menu[aria-expanded="true"] span:after{background:currentColor;transform:translateY(-.5px) rotate(-45deg)}
    .po-hero{position:relative;min-height:100svh;padding:calc(var(--header) + 72px) 0 68px;overflow:hidden;display:flex;align-items:flex-end}.po-hero__grid{position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(to bottom,transparent 3%,black 38%,transparent 96%)}.po-hero__convergence{position:absolute;right:-1%;top:13%;width:min(42vw,620px);height:60%;opacity:.72}.po-hero__convergence path{fill:none;stroke:#505657;stroke-width:1}.po-hero__convergence path:last-child{stroke:var(--yellow);stroke-width:2}.po-hero__body{position:relative;z-index:1}.po-hero__statement{width:58%;max-width:750px}.po-hero__statement .po-display>span{display:block}.po-hero__statement .po-eyebrow{color:#c6cac8}.po-hero__bottom{margin-top:clamp(52px,8vh,92px);display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;border-top:1px solid #343839;padding-top:28px}.po-hero__descriptor{max-width:550px;font-size:clamp(1rem,1.35vw,1.18rem);color:#b9bebc}.po-hero__actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}.po-scroll{position:absolute;left:50%;bottom:22px;color:#8d9292;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;transform:translateX(-50%)}
    .po-gap__intro{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:clamp(40px,8vw,120px);align-items:end}.po-gap__intro .po-lead{font-size:1.05rem}.po-gap-map{margin-top:64px;border-top:1px solid #c8ccca;border-bottom:1px solid #c8ccca;padding:30px 0;display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:24px;align-items:center}.po-gap-map__node small{display:block;color:var(--steel);font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;font-weight:800;margin-bottom:8px}.po-gap-map__node strong{font-size:clamp(1.05rem,1.7vw,1.45rem)}.po-gap-map__node--gap{padding:10px 24px;border-left:3px solid var(--yellow)}.po-gap-map__arrow{color:var(--steel);font-size:1.35rem}
    .po-scenario{background:#e8e9e5}.po-scenario__card{background:var(--black);color:var(--white);border-top:3px solid var(--yellow)}.po-scenario__heading{padding:clamp(34px,4.8vw,66px);display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(36px,6vw,86px);align-items:end;border-bottom:1px solid #393d3f}.po-scenario__heading .po-h3{max-width:720px}.po-scenario__heading .po-note{margin:20px 0 0;color:#8f9593;font-size:.82rem}.po-scenario__flow{padding:clamp(34px,4.8vw,66px);display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:24px;align-items:stretch}.po-flow-step{padding:8px 0;display:flex;flex-direction:column;gap:20px}.po-flow-step__n{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#8f9593;font-weight:800}.po-flow-step strong{font-size:clamp(1.25rem,2vw,1.7rem);font-weight:620}.po-flow-step p{margin:0;color:#aeb3b2}.po-flow-arrow{display:grid;place-items:center;color:var(--yellow);font-size:1.4rem}.po-credibility{display:none}
    .po-outcomes{background:var(--paper)}.po-outcome-line{margin-top:64px;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--grey)}.po-outcome-line__item{padding:24px 18px 8px 0;border-right:1px solid var(--grey);min-height:166px}.po-outcome-line__item:not(:first-child){padding-left:20px}.po-outcome-line__item:last-child{border-right:0}.po-outcome-line__n{display:block;color:var(--steel);font-size:.72rem;font-weight:800;margin-bottom:26px}.po-outcome-line strong{font-size:clamp(.96rem,1.4vw,1.15rem);line-height:1.25;display:block}.po-outcome-line p{margin:12px 0 0;color:#666b6d;font-size:.86rem;line-height:1.45}
    .po-transform{background:#e8e9e5}.po-transform__head{display:grid;grid-template-columns:1.15fr .65fr;gap:40px;align-items:end}.po-tabs{margin-top:54px}.po-tablist{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #abb0ad;border-bottom:1px solid #abb0ad}.po-tab{min-height:76px;border:0;border-right:1px solid #c6cac7;background:transparent;color:#4d5255;padding:15px 18px;text-align:left;font-weight:720;cursor:pointer;position:relative}.po-tab:last-child{border-right:0}.po-tab:before{content:"";position:absolute;left:18px;right:18px;bottom:-1px;height:3px;background:transparent}.po-tab[aria-selected="true"]{color:var(--black)}.po-tab[aria-selected="true"]:before{background:var(--yellow)}.po-tab[aria-selected="true"]:after{content:"";position:absolute;right:16px;top:16px;width:7px;height:7px;background:var(--yellow);border-radius:50%}.po-mobile-select{display:none}.po-panels{margin-top:34px;position:relative}.po-panel{display:none;border-top:1px solid #adb2af;border-bottom:1px solid #adb2af;grid-template-columns:.58fr 1.42fr;min-height:420px}.po-panel.is-active{display:grid}.po-panel__outcome{padding:clamp(28px,4vw,52px) clamp(20px,3.3vw,42px) clamp(28px,4vw,52px) 0;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid #adb2af}.po-panel__outcome p{color:#5c6263}.po-icon-orbit{width:76px;height:76px;border:1px solid #969c99;border-radius:50%;display:grid;place-items:center;position:relative}.po-icon-orbit:after{content:"";width:9px;height:9px;background:var(--yellow);border-radius:50%;position:absolute;right:0;top:12px}.po-icon-orbit svg{width:31px;height:31px;stroke:currentColor;fill:none;stroke-width:1.6}.po-panel__logic{padding:clamp(28px,4vw,52px) 0 clamp(28px,4vw,52px) clamp(20px,3.3vw,42px);display:grid;grid-template-columns:repeat(3,1fr);align-content:center}.po-logic{min-height:264px;padding:0 28px;border-right:1px solid #bec2bf;position:relative}.po-logic:not(:last-child):after{content:"→";position:absolute;right:-9px;top:50%;transform:translateY(-50%);background:#e8e9e5;color:#7c8280;padding:4px 0}.po-logic:first-child{padding-left:0}.po-logic:last-child{border:0;padding-right:0}.po-logic__label{font-size:.67rem;letter-spacing:.11em;text-transform:uppercase;font-weight:800;color:var(--steel);display:block;margin-bottom:24px}.po-logic ul{padding:0;margin:0;list-style:none}.po-logic li{padding:10px 0;border-bottom:1px solid #ced2cf;font-size:.92rem}.po-logic p{font-size:1.05rem;line-height:1.55;margin:0}.po-transform__hint{display:none}
    .po-one{position:relative;overflow:hidden}.po-one__head{text-align:center;margin-inline:auto}.po-one__head .po-h2{margin-inline:auto}.po-one-map{margin:72px auto 0;max-width:1060px;position:relative;display:grid;grid-template-columns:1fr 220px 1fr;align-items:center;min-height:420px}.po-one__inputs{display:grid;gap:8px}.po-one__input{padding:13px 18px;color:#c4c8c6;display:flex;align-items:center;gap:12px;border-bottom:1px solid #3e4344}.po-one__input i{width:8px;height:8px;border:1px solid #767c7a;border-radius:50%}.po-one__core{width:182px;height:182px;margin:auto;border:1px solid #6a7070;border-radius:50%;display:grid;place-items:center;position:relative}.po-one__core:before{content:"";position:absolute;border:1px solid #34393a;border-radius:50%;inset:-24px}.po-one__core strong{font-size:3rem;letter-spacing:-.06em}.po-one__core .po-signal{position:absolute;width:12px;height:12px;background:var(--yellow);border-radius:50%;right:8px;top:25px}.po-one__output{text-align:center}.po-one__output span{display:block;color:var(--steel);font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:12px}.po-one__output strong{font-size:clamp(1.8rem,3vw,3.2rem);letter-spacing:-.04em;color:var(--yellow)}.po-one__lines{position:absolute;inset:0;z-index:0;pointer-events:none}.po-one__inputs,.po-one__core,.po-one__output{z-index:1}.po-one__lines path{fill:none;stroke:#454a4b;stroke-width:1}.po-one__lines path:last-child{stroke:var(--yellow)}.po-one__mobile-arrow{display:none}
    .po-scale__head{display:grid;grid-template-columns:1.15fr .65fr;gap:50px;align-items:end}.po-scale-track{margin-top:70px;display:grid;grid-template-columns:repeat(5,1fr);position:relative}.po-scale-track:before{content:"";position:absolute;top:30px;left:10%;right:10%;height:1px;background:#c1c5c3}.po-scale-step{position:relative;padding-right:28px}.po-scale-step__letter{position:relative;z-index:1;width:62px;height:62px;border-radius:50%;border:1px solid #a9aeab;background:var(--white);display:grid;place-items:center;font-size:1.25rem;font-weight:800}.po-scale-step:nth-child(4) .po-scale-step__letter,.po-scale-step:nth-child(5) .po-scale-step__letter{border-color:var(--yellow)}.po-scale-step h3{margin:24px 0 8px;font-size:1.15rem}.po-scale-step p{margin:0;color:#606567;font-size:.9rem}.po-principles{margin-top:68px;padding-top:26px;border-top:1px solid #c5c9c7;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.po-principle{display:flex;align-items:center;gap:12px;font-weight:750}.po-principle:before{content:"";width:9px;height:9px;border:1px solid var(--black);border-radius:50%}.po-principle:last-child:before{background:var(--yellow);border-color:var(--yellow)}
    .po-impact__head{display:grid;grid-template-columns:1.2fr .6fr;align-items:end;gap:clamp(40px,8vw,110px)}.po-impact__proof{margin-top:58px;border-top:1px solid #4b5051;border-bottom:1px solid #4b5051;min-height:330px}.po-story{padding:clamp(34px,5vw,64px) 0;display:grid;grid-template-columns:.52fr 1fr;gap:clamp(44px,8vw,120px);align-items:end}.po-story__status{display:block;color:#8f9593;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800}.po-story h3{margin:18px 0 0;font-size:clamp(2rem,3.3vw,3.6rem);line-height:1.02;letter-spacing:-.04em;max-width:720px}.po-story p{color:#b9bebc;max-width:620px;margin:0}.po-story__rule{display:flex;align-items:center;gap:14px;color:#d6d9d7;font-weight:700;margin-top:28px}.po-story__rule:before{content:"";width:9px;height:9px;background:var(--yellow);border-radius:50%}
    .po-insights__grid{margin-top:52px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #aeb3b0}.po-insight{min-height:250px;padding:28px 28px 18px 0;border-right:1px solid #c9cdca;display:flex;flex-direction:column;justify-content:space-between}.po-insight:not(:first-child){padding-left:28px}.po-insight:last-child{border-right:0}.po-insight__type{font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;color:var(--steel);font-weight:800}.po-insight h3{font-size:clamp(1.25rem,1.9vw,1.75rem);line-height:1.2;letter-spacing:-.025em;margin:36px 0 0}.po-insight__line{width:24px;height:2px;background:var(--yellow);margin-top:26px}
    .po-final{position:relative;overflow:hidden}.po-final__inner{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .55fr;gap:60px;align-items:end}.po-final__inner .po-h2{font-size:clamp(3rem,6.15vw,6.6rem)}.po-final__signal{position:absolute;inset:0 0 0 42%;width:58%;height:100%;opacity:.58}.po-final__signal path{fill:none;stroke:#3a3f40;stroke-width:1}.po-final__signal path:last-child{stroke:var(--yellow);stroke-width:2}.po-footer{padding:34px 0;background:var(--black);color:#9ba19f;border-top:1px solid #333738}.po-footer__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:.8rem}.po-footer img{width:120px}.po-footer__links{display:flex;gap:22px}.po-footer a{text-decoration:none}.po-footer a:hover{color:var(--yellow)}
    .po-dialog{border:0;padding:0;background:transparent;width:min(760px,calc(100% - 32px));max-height:min(820px,calc(100dvh - 32px));overflow:visible}.po-dialog::backdrop{background:rgba(8,10,11,.82);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.po-dialog__surface{background:var(--white);border-radius:18px;overflow:auto;max-height:min(820px,calc(100dvh - 32px));box-shadow:0 30px 90px rgba(0,0,0,.35)}.po-dialog__top{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid var(--grey)}.po-dialog__brand{font-weight:800;letter-spacing:-.02em}.po-dialog__close{width:46px;height:46px;border:1px solid #bec2c0;border-radius:50%;background:transparent;cursor:pointer;font-size:1.4rem}.po-dialog__body{padding:clamp(28px,5vw,54px)}.po-progress{display:flex;align-items:center;gap:8px;margin-bottom:38px}.po-progress i{height:3px;flex:1;background:#cfd2d0}.po-progress i.is-active{background:var(--yellow)}.po-step{display:none}.po-step.is-active{display:block}.po-step h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.03;letter-spacing:-.045em;margin:0 0 16px}.po-step__intro{color:#626769;margin-bottom:28px}.po-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.po-choice{min-height:60px;border:1px solid #b8bcba;border-radius:10px;background:transparent;text-align:left;padding:14px 18px;font-weight:720;cursor:pointer}.po-choice[aria-pressed="true"]{background:var(--black);border-color:var(--black);color:white}.po-choice[aria-pressed="true"]:after{content:"";float:right;width:9px;height:9px;background:var(--yellow);border-radius:50%;margin-top:7px}.po-dialog__actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:30px}.po-selected-context{padding:14px 18px;border-left:3px solid var(--yellow);background:#ebece8;display:flex;justify-content:space-between;gap:20px;margin-bottom:26px}.po-selected-context span{color:#686d6f}.po-selected-context button{border:0;background:transparent;text-decoration:underline;font-weight:750;cursor:pointer}.po-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.po-field{display:grid;gap:8px}.po-field--wide{grid-column:1/-1}.po-field label{font-weight:750;font-size:.86rem}.po-field input,.po-field textarea{width:100%;border:1px solid #aeb3b0;border-radius:8px;background:white;color:var(--black);padding:14px 15px;min-height:52px}.po-field textarea{min-height:110px;resize:vertical}.po-required{color:#6a6f71;font-size:.76rem}.po-mail-status{min-height:20px;font-size:.8rem;color:#5f6566;margin-top:16px}
    @media(max-width:1023px){:root{--header:72px}.po-wrap{width:min(calc(100% - 40px),var(--max))}.po-nav{position:fixed;inset:var(--header) 0 auto;background:var(--black);padding:24px 20px 32px;display:none;flex-direction:column;align-items:stretch;border-top:1px solid #333}.po-nav.is-open{display:flex}.po-nav a{min-height:46px;display:flex;align-items:center}.po-menu{display:flex}.po-hero{min-height:780px}.po-hero__statement{width:70%}.po-hero__bottom{grid-template-columns:1fr}.po-hero__actions{justify-content:flex-start}.po-gap__intro,.po-transform__head,.po-scale__head,.po-final__inner,.po-impact__head{grid-template-columns:1fr}.po-tab{padding-inline:12px;font-size:.86rem}.po-panel{grid-template-columns:.7fr 1.3fr}.po-panel__logic{grid-template-columns:1fr}.po-logic{min-height:auto;border-right:0;border-bottom:1px solid #bec2bf;padding:18px 0}.po-logic:not(:last-child):after{content:"↓";right:auto;left:50%;top:auto;bottom:-13px;transform:translateX(-50%)}.po-logic:first-child{padding-top:0}.po-logic:last-child{border:0;padding-bottom:0}.po-one-map{grid-template-columns:1fr 180px 1fr}.po-story{grid-template-columns:.65fr 1fr}.po-insights__grid{grid-template-columns:repeat(3,1fr)}}
    @media(max-width:767px){.po-wrap{width:min(calc(100% - 32px),var(--max))}.po-section{padding:64px 0}.po-section--tight{padding:54px 0}.po-logo img{width:126px}.po-display{font-size:clamp(2.28rem,11.2vw,3.15rem)}.po-h2{font-size:clamp(2.15rem,10.4vw,3.35rem)}.po-lead{font-size:1rem}.po-hero{min-height:100svh;padding-top:calc(var(--header) + 44px);padding-bottom:64px;align-items:center}.po-hero__statement{width:100%;max-width:100%}.po-hero__convergence{width:92vw;height:48%;top:4%;right:-45%;opacity:.55}.po-hero__bottom{margin-top:42px;padding-top:20px;gap:22px}.po-hero__actions{display:grid;grid-template-columns:1fr}.po-scroll{display:none}.po-gap__intro{gap:18px}.po-gap-map{margin-top:36px;display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:18px 0}.po-gap-map__node{padding:10px 0}.po-gap-map__node--gap{padding:12px 16px}.po-gap-map__arrow{transform:rotate(90deg);text-align:center}.po-scenario__heading{padding:28px;grid-template-columns:1fr;gap:24px}.po-scenario__flow{padding:26px 28px;grid-template-columns:1fr;gap:0}.po-flow-step{gap:8px;padding:17px 0}.po-flow-arrow{transform:rotate(90deg);justify-self:start;height:18px}.po-outcome-line{grid-template-columns:1fr;margin-top:36px}.po-outcome-line__item,.po-outcome-line__item:not(:first-child){min-height:auto;padding:16px 0;display:grid;grid-template-columns:34px minmax(110px,.9fr) 1.1fr;gap:12px;align-items:start;border-right:0;border-bottom:1px solid var(--grey)}.po-outcome-line__n{margin:2px 0 0}.po-outcome-line p{margin:0}.po-transform__head{gap:16px}.po-transform__hint{display:block;margin:24px 0 8px;color:#626769;font-size:.8rem}.po-tablist{display:none}.po-mobile-select{display:grid;gap:8px;margin-top:24px}.po-mobile-select label{font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;color:var(--steel);font-weight:800}.po-mobile-select select{width:100%;min-height:54px;border:1px solid #8f9592;border-radius:8px;background:var(--paper);color:var(--black);padding:12px 44px 12px 14px;font-weight:750}.po-panels{margin-top:18px}.po-panel,.po-panel.is-active{grid-template-columns:1fr}.po-panel__outcome{min-height:auto;padding:24px 0;border-right:0;border-bottom:1px solid #adb2af;display:grid;grid-template-columns:58px 1fr;gap:18px;align-items:center}.po-panel__outcome .po-eyebrow{margin-bottom:6px}.po-panel__outcome p{margin:6px 0 0}.po-icon-orbit{width:56px;height:56px}.po-icon-orbit svg{width:25px;height:25px}.po-panel__logic{grid-template-columns:1fr;padding:14px 0}.po-logic{padding:18px 0}.po-logic__label{margin-bottom:10px}.po-logic li{padding:7px 0}.po-one__head{text-align:left}.po-one-map{margin-top:38px;grid-template-columns:1fr;gap:20px;min-height:auto}.po-one__inputs{gap:0;padding-left:20px;border-left:1px solid #4b5051}.po-one__input{padding:10px 0;font-size:.88rem}.po-one__input i{margin-left:-25px;background:var(--black)}.po-one__core{width:142px;height:142px}.po-one__core:before{inset:-15px}.po-one__core strong{font-size:2.35rem}.po-one__output{text-align:center}.po-one__lines{display:none}.po-one__mobile-arrow{display:block;text-align:center;color:#777d7b;font-size:1.35rem;line-height:1}.po-scale-track{margin-top:36px;grid-template-columns:1fr;gap:0}.po-scale-track:before{left:25px;top:10px;bottom:10px;width:1px;height:auto}.po-scale-step{display:grid;grid-template-columns:54px 1fr;gap:16px;padding:0 0 18px}.po-scale-step__letter{width:50px;height:50px}.po-scale-step h3{margin:4px 0 2px}.po-principles{margin-top:28px;grid-template-columns:1fr 1fr;gap:13px;font-size:.88rem}.po-impact__head{gap:18px}.po-impact__proof{margin-top:34px;min-height:auto}.po-story{grid-template-columns:1fr;gap:28px;padding:32px 0}.po-story h3{font-size:2.1rem}.po-insights__grid{grid-template-columns:1fr}.po-insight,.po-insight:not(:first-child){min-height:auto;padding:20px 0;border-right:0;border-bottom:1px solid #c9cdca}.po-insight h3{margin-top:18px}.po-insight__line{margin-top:18px}.po-final__inner{gap:32px}.po-final__signal{left:30%;width:70%;opacity:.44}.po-footer__inner{align-items:flex-start;flex-direction:column}.po-footer__links{flex-wrap:wrap}.po-dialog{width:100%;max-height:100dvh;margin:0;inset:auto 0 0 0}.po-dialog__surface{border-radius:16px 16px 0 0;max-height:94dvh}.po-dialog__top{padding:14px 16px}.po-dialog__body{padding:24px 20px calc(26px + env(safe-area-inset-bottom))}.po-progress{margin-bottom:24px}.po-choices,.po-form-grid{grid-template-columns:1fr}.po-field--wide{grid-column:auto}.po-dialog__actions{position:sticky;bottom:-1px;background:var(--white);padding-top:12px}.po-choice{min-height:54px}}
    @media(max-width:374px){.po-wrap{width:min(calc(100% - 24px),var(--max))}.po-display{font-size:2.3rem}.po-h2{font-size:2.04rem}.po-hero__descriptor{font-size:.92rem}.po-btn{width:100%}.po-outcome-line__item,.po-outcome-line__item:not(:first-child){grid-template-columns:28px 1fr}.po-outcome-line p{grid-column:2}.po-principles{grid-template-columns:1fr}.po-dialog__body{padding-inline:16px}.po-selected-context{flex-direction:column;gap:5px}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
    @media print{.po-header,.po-dialog,.po-scroll{display:none!important}.po-hero{min-height:720px;padding-top:80px}.po-section{break-inside:avoid}.po-btn{border:1px solid currentColor}}

/* ==========================================================================
   PALM ONE — Header, Footer y Buscador (compartidos por TODO el sitio)
   Movido aqui desde homepage.css como parte de DEV-04 (elementos reutilizables)
   ========================================================================== */

/* ---------- HEADER ---------- */
/* Fijo (estilo apple.com): se queda siempre visible arriba, sin fondo propio
   (transparente) para no chocar con el color de la sección que quede detrás.
   El contraste (texto/logo claro u oscuro) se ajusta solo, en tiempo real,
   según la sección que en ese momento está debajo del header — ver
   /js/partials.js. */
.ph-header {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 500;
  display: flex;
  align-items: center;
  gap: clamp(20px, 3vw, 53px);
  padding: 22px 34px 0 40px;
  background: transparent;
  border-bottom: 1px solid transparent;
  transition: color .28s ease, background .25s ease, padding .25s ease, border-color .25s ease;
}
/* Fondo sólido al hacer scroll (estilo Fiore) — solo se activa en páginas
   que marcan <body data-header-scroll-solid="true"> (hoy, la Homepage);
   ver el bloque "Header fijo con contraste automático" en partials.js. */
.ph-header.is-scrolled {
  padding: 12px 34px 12px 40px;
  background: rgba(250,250,249,.96);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-bottom: 1px solid var(--grey);
}
.ph-header__logo img { transition: opacity .18s ease; }
.ph-header__logo { display: inline-flex; align-items: center; flex: none; }
.ph-header__logo img { display: block; width: 146px; height: auto; }

.ph-header__nav {
  display: flex;
  gap: clamp(15.5px, 2vw, 37.5px);
  font-size: clamp(13px, 1.05vw, 16px);
  color: #222426;
  white-space: nowrap;
}
.ph-header__nav a { position: relative; text-decoration: none; color: inherit; padding-bottom: 6px; }
.ph-header__nav a.is-active { font-weight: 700; }
.ph-header__nav a.is-active::after {
  content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: var(--yellow);
}
.ph-header.is-dark-theme .ph-header__nav a.is-active::after { background: var(--yellow); }

/* ---- Menú desplegable "Cómo activamos capacidad" (mismo del de Fiore) ---- */
.ph-nav-drop { position: relative; display: inline-flex; align-items: flex-start; gap: 6px; padding-bottom: 12px; margin-bottom: -12px; }
.ph-nav-drop__caret { font-size: 8px; line-height: 1; margin-top: 5px; pointer-events: none; }
.ph-nav-drop__panel {
  position: absolute; top: 100%; left: 50%; transform: translate(-50%, 10px);
  min-width: 300px; background: #FAFAF9; border: 1px solid #DBDEDC; border-radius: 8px;
  padding: 8px; box-shadow: 0 14px 32px rgba(17,19,21,.12);
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .18s ease, transform .18s ease, visibility .18s;
  z-index: 510; white-space: normal;
}
.ph-nav-drop:hover .ph-nav-drop__panel,
.ph-nav-drop:focus-within .ph-nav-drop__panel {
  opacity: 1; visibility: visible; pointer-events: auto; transform: translate(-50%, 2px);
}
.ph-header__nav .ph-nav-drop__panel a {
  display: block; padding: 10px 14px; min-height: 44px; box-sizing: border-box;
  font-size: 13px; font-weight: 600; line-height: 1.3; color: #111315;
  border-radius: 6px; text-decoration: none;
}
.ph-header__nav .ph-nav-drop__panel a::after { display: none; }
.ph-nav-drop__n { display: block; font-size: 9.5px; font-weight: 700; letter-spacing: .12em; color: #74797D; margin-bottom: 3px; }
.ph-header__nav .ph-nav-drop__panel a:hover,
.ph-header__nav .ph-nav-drop__panel a:focus-visible { background: rgba(234,203,53,.16); outline: none; }
/* en páginas de capacidad, el título del menú queda marcado como activo */
.ph-nav-drop.is-current > .ph-nav-drop__trigger { font-weight: 700; }
.ph-nav-drop.is-current > .ph-nav-drop__trigger::after {
  content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: var(--yellow);
}
@media (prefers-reduced-motion: reduce) { .ph-nav-drop__panel { transition: none; } }

.ph-header__menu-btn {
  display: none;
  background: none; border: none; padding: 0; cursor: pointer;
  flex-direction: column; gap: 5px;
}
.ph-header__menu-btn span { display: block; width: 24px; height: 1.8px; background: var(--black); }

.ph-header__spacer { flex: 1; }

.ph-header__actions { display: flex; align-items: center; gap: 20px; }
.ph-header__divider { width: 1px; height: 22px; background: rgba(17,19,21,.2); }

.ph-header__lang-btn {
  display: flex; align-items: center; gap: 7px;
  background: none; border: none; cursor: pointer;
  font: 500 14.5px Manrope, sans-serif; color: var(--black);
}

.ph-header__cta {
  display: flex; align-items: center; gap: 7px;
  background: var(--black); color: var(--white);
  font: 500 13px Manrope, sans-serif;
  padding: 10px 17px; border-radius: 6px; border: none; cursor: pointer; white-space: nowrap; flex: none;
}
.ph-header__search-btn { background: none; border: none; padding: 0; cursor: pointer; display: block; }
.ph-header__search-icon { display: block; width: 19px; height: 19px; border: 1.6px solid var(--black); border-radius: 50%; position: relative; }
.ph-header__search-icon::after { content: ''; position: absolute; width: 1.6px; height: 8px; background: var(--black); right: -3px; bottom: -5px; transform: rotate(-45deg); }

/* Variante oscura del header: para páginas que empiezan con fondo negro
   (sin la franja clara que sí tiene el Hero de la Homepage). Se activa
   agregando <body data-header-theme="dark"> — ver partials.js. */
.ph-header.is-dark-theme .ph-header__nav { color: rgba(250,250,249,.85); }
.ph-header.is-dark-theme .ph-header__lang-btn { color: var(--white); }
.ph-header.is-dark-theme .ph-header__cta { background: var(--yellow); color: var(--black); }
.ph-header.is-dark-theme .ph-header__search-icon { border-color: var(--white); }
.ph-header.is-dark-theme .ph-header__search-icon::after { background: var(--white); }
.ph-header.is-dark-theme .ph-header__menu-btn span { background: var(--white); }

/* ---------- FOOTER ---------- */
.ph-footer {
  background: var(--black);
  color: var(--white);
  padding: 34px 56px 38px 88px;
  border-top: 1px solid rgba(250,250,249,.16);
  font-family: 'Manrope', Arial, sans-serif;
}
.ph-footer__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 24px;
}
.ph-footer__brand { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.ph-footer__brand-logo { display: block; width: 132px; height: auto; }
.ph-footer__brand-divider { width: 1px; height: 18px; background: rgba(250,250,249,.22); }
.ph-footer__tagline { font-size: 14.5px; color: rgba(250,250,249,.58); }

.ph-footer__nav {
  display: flex;
  gap: clamp(15.5px, 2vw, 31px);
  font-size: 14px;
  color: rgba(250,250,249,.76);
  flex-wrap: wrap;
}
.ph-footer__nav a { text-decoration: none; color: inherit; }
.ph-footer__nav a.is-active { color: var(--white); font-weight: 700; box-shadow: inset 0 -2px 0 var(--yellow); padding-bottom: 3px; }

/* ---------- RESPONSIVE ---------- */
/* Punto de quiebre "wide" del original (React lo hacía con JS a ~900px;
   lo replicamos con CSS media query, consistente con el resto del sitio) */
@media (max-width: 899px) {
  .ph-header { padding: 18px 14px 0 14px; gap: 12px; }
  .ph-header.is-scrolled { padding: 12px 14px; }
  .ph-header__logo img { width: 122px; }
  .ph-header__nav { display: none; }
  .ph-header__menu-btn { display: flex; }
  .ph-header__actions { gap: 12px; }
  .ph-header__divider { display: none; }
  .ph-header__search-btn { display: none; }
  .ph-header__lang-btn { font-size: 14.5px; }

  .ph-footer { padding: 30px 22px 36px; }
  .ph-footer__inner { flex-direction: column; align-items: flex-start; }
}

/* ---------- Menú móvil desplegado (estado "abierto") ---------- */
@media (max-width: 899px) {
  .ph-header__nav.is-open {
    display: flex;
    position: absolute;
    top: 64px;
    left: 14px;
    right: 14px;
    background: var(--white);
    flex-direction: column;
    gap: 4px;
    padding: 18px;
    border-radius: var(--radius);
    box-shadow: 0 12px 32px rgba(17,19,21,.15);
  }
  .ph-header__nav.is-open a { padding: 10px 0; }
  .ph-header__nav.is-open .ph-nav-drop { display: block; padding: 0; margin: 0; }
  .ph-header__nav.is-open .ph-nav-drop__caret { display: none; }
  .ph-header__nav.is-open .ph-nav-drop__panel {
    position: static; transform: none; opacity: 1; visibility: visible; pointer-events: auto;
    min-width: 0; background: transparent; border: 0; box-shadow: none; padding: 0 0 4px 14px;
  }
  .ph-header__nav.is-open .ph-nav-drop__panel a { padding: 8px 0; min-height: 0; font-size: 13px; }
}


/* ---- Buscador (barra superior deslizante) ---- */
/* Fondo oscuro detrás del buscador (igual al de Fiore): propio y separado
   del scrim de "Conversemos" (que solo existe en el homepage), para que el
   buscador se vea y se comporte igual en todas las páginas del sitio. */
.ph-conv-search__scrim {
  position: fixed; inset: 0; z-index: 910; background: rgba(17,19,21,.55);
  opacity: 0; visibility: hidden; transition: opacity .25s ease;
}
.ph-conv-search__scrim.is-open { opacity: 1; visibility: visible; }
.ph-conv-search {
  position: fixed; top: 0; left: 0; right: 0; z-index: 920; background: var(--paper, #fff);
  border-bottom: 1px solid var(--grey); transform: translateY(-101%);
  transition: transform .28s cubic-bezier(.22,.61,.36,1);
}
.ph-conv-search.is-open { transform: translateY(0); }
.ph-conv-search__bar { display: flex; align-items: center; gap: 18px; padding: 26px 40px; }
.ph-conv-search__icon { display: block; width: 19px; height: 19px; border: 1.6px solid var(--black); border-radius: 50%; position: relative; flex: none; }
.ph-conv-search__icon::after { content: ''; position: absolute; width: 1.6px; height: 8px; background: var(--black); right: -3px; bottom: -5px; transform: rotate(-45deg); }
.ph-conv-search__bar input { flex: 1; min-width: 0; border: none; background: none; font: 400 22px Manrope, sans-serif; letter-spacing: -.01em; color: var(--black); outline: none; }
.ph-conv-search__bar button { background: none; border: none; font: 500 12px Manrope, sans-serif; letter-spacing: .09em; color: var(--steel); cursor: pointer; }
.ph-conv-search__suggested { padding: 0 40px 26px; display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.ph-conv-search__suggested > span:first-child { font-size: 10.5px; font-weight: 600; letter-spacing: .13em; color: var(--steel); margin-right: 6px; }
.ph-conv-search-link { padding: 7px 13px; border: 1px solid var(--grey); border-radius: 2px; font-size: 13px; color: var(--black); text-decoration: none; }
.ph-conv-search-link--sm { font-size: 11px; }


@media (max-width: 899px) {
  .ph-conv-search__bar { padding: 20px 22px; }
  .ph-conv-search__suggested { padding: 0 22px 22px; }
}

/* ==========================================================================
   PALM ONE — Animación de entrada compartida (para páginas internas que no
   tienen su propio sistema de animación ya armado). Se activa agregando la
   clase "ph-reveal" a cualquier sección — ver /js/reveal.js.
   Solo se ocultan si JS confirmó estar activo (html.js-anim); si JS fallara,
   las secciones se quedan visibles normalmente, nunca dependen de JS para
   poder verse.
   ========================================================================== */
html.js-anim .ph-reveal {
  opacity: 0; transform: translateY(28px);
  transition: opacity .7s cubic-bezier(.16,.84,.44,1), transform .7s cubic-bezier(.16,.84,.44,1);
}
html.js-anim .ph-reveal.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  html.js-anim .ph-reveal { transition: none; opacity: 1; transform: none; }
}

/* ==========================================================================
   PALM ONE — Placeholder de páginas internas (mientras llega el diseño real
   de Fiore). Honesto y simple: no inventa contenido ni diseño final —
   solo confirma que la página existe y está en desarrollo.
   ========================================================================== */
.ph-placeholder {
  min-height: 70vh; display: flex; flex-direction: column; align-items: flex-start; justify-content: center;
  padding: 140px 56px 100px 88px; font-family: 'Manrope', Arial, sans-serif;
}
.ph-placeholder__eyebrow {
  display: flex; align-items: center; gap: 12px; margin-bottom: 20px;
  font-size: 11px; font-weight: 700; letter-spacing: .15em; color: var(--steel);
}
.ph-placeholder__eyebrow::before { content: ''; width: 22px; height: 1.5px; background: var(--black); }
.ph-placeholder__title { margin: 0; font-size: clamp(34px, 4vw, 52px); line-height: 1.05; letter-spacing: -.03em; font-weight: 700; color: var(--black); }
.ph-placeholder__note { margin: 20px 0 0; max-width: 460px; font-size: 15px; line-height: 1.6; color: var(--steel); }
.ph-placeholder__back {
  display: inline-flex; align-items: center; gap: 10px; margin-top: 32px;
  border: 1px solid var(--black); color: var(--black); text-decoration: none;
  font-size: 13.5px; font-weight: 500; padding: 12px 20px; border-radius: 999px;
}

@media (max-width: 767px) {
  .ph-placeholder { padding: 120px 22px 70px; }
}

/* ==========================================================================
   PALM ONE — Animación en cascada + efecto al pasar el mouse (compartidos)
   "ph-stagger-group": sus hijos directos aparecen uno tras otro (no todos
   a la vez) cuando el grupo entra en pantalla — usa el mismo observador de
   reveal.js. "ph-lift": tarjetas/botones que se levantan un poco al pasar
   el mouse, con sombra suave.
   ========================================================================== */
html.js-anim .ph-stagger-group > * {
  opacity: 0; transform: translateY(22px);
  transition: opacity .55s cubic-bezier(.16,.84,.44,1), transform .55s cubic-bezier(.16,.84,.44,1);
}
html.js-anim .ph-stagger-group.is-visible > * { opacity: 1; transform: none; }
html.js-anim .ph-stagger-group.is-visible > *:nth-child(1) { transition-delay: .03s; }
html.js-anim .ph-stagger-group.is-visible > *:nth-child(2) { transition-delay: .09s; }
html.js-anim .ph-stagger-group.is-visible > *:nth-child(3) { transition-delay: .15s; }
html.js-anim .ph-stagger-group.is-visible > *:nth-child(4) { transition-delay: .21s; }
html.js-anim .ph-stagger-group.is-visible > *:nth-child(5) { transition-delay: .27s; }
html.js-anim .ph-stagger-group.is-visible > *:nth-child(6) { transition-delay: .33s; }
html.js-anim .ph-stagger-group.is-visible > *:nth-child(n+7) { transition-delay: .38s; }

.ph-lift { transition: transform .25s cubic-bezier(.16,.84,.44,1), box-shadow .25s ease; }
.ph-lift:hover { transform: translateY(-5px); box-shadow: 0 16px 32px rgba(17,19,21,.1); }

@media (prefers-reduced-motion: reduce) {
  html.js-anim .ph-stagger-group > * { transition: none; opacity: 1; transform: none; }
  .ph-lift, .ph-lift:hover { transition: none; transform: none; box-shadow: none; }
}

/* ---- Header en pantallas medianas (900–1199px): que todo quepa sin cortarse ---- */
@media (min-width: 900px) and (max-width: 1199px) {
  .ph-header { gap: 16px; padding-left: 28px; padding-right: 22px; }
  .ph-header__logo img { width: 120px; }
  .ph-header__nav { gap: 14px; font-size: 12.5px; }
  .ph-header__actions { gap: 12px; }
  .ph-header__divider { display: none; }
  .ph-header__cta { padding: 9px 13px; font-size: 12px; }
  .ph-header__lang-btn { font-size: 13px; }
}
@media (min-width: 900px) and (max-width: 959px) {
  .ph-header { gap: 10px; padding-left: 20px; padding-right: 14px; }
  .ph-header__logo img { width: 104px; }
  .ph-header__nav { gap: 10px; font-size: 12px; }
  .ph-header__actions { gap: 8px; }
  .ph-header__cta { padding: 8px 10px; font-size: 11.5px; }
}

/* ---- Header en móvil angosto: logo + menú + idioma + botón sin cortarse ---- */
@media (max-width: 480px) {
  .ph-header { gap: 8px; padding-left: 16px; padding-right: 12px; }
  .ph-header__logo img { width: 104px; }
  .ph-header__actions { gap: 8px; }
  .ph-header__cta { padding: 8px 10px; font-size: 11.5px; }
  .ph-header__lang-btn { font-size: 12px; }
}
@media (max-width: 359px) {
  .ph-header { gap: 4px; padding-left: 12px; padding-right: 10px; }
  .ph-header__logo img { width: 90px; }
  .ph-header__actions { gap: 4px; }
  .ph-header__cta { padding: 7px 8px; font-size: 11px; }
  .ph-header__lang-btn { font-size: 11px; }
}

/* ---------- iPhone / Safari iOS ----------
   - iOS hace zoom automático al tocar un campo con letra < 16px (la página
     "salta" y queda desplazada): en celular/tablet los campos usan 16px.
   - text-size-adjust evita que Safari agrande textos por su cuenta al girar el celular.
   */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
@media (max-width: 899px) {
  input:not([type="checkbox"]):not([type="radio"]), textarea, select { font-size: 16px !important; }
}

/* ---------- Toque cómodo en celular/tablet ----------
   Los botones del header y los links del pie eran muy pequeños para el dedo
   (hamburguesa 24x9, idioma 42x19). Se amplía la zona de toque (>=44px) con un
   área invisible, sin cambiar cómo se ve nada. */
@media (max-width: 899px) {
  .ph-header__menu-btn, .ph-header__lang-btn, .ph-header__cta, .ph-header__logo { position: relative; }
  .ph-header__menu-btn::after, .ph-header__lang-btn::after, .ph-header__cta::after, .ph-header__logo::after {
    content: ""; position: absolute; inset: -10px -6px; min-height: 44px;
  }
  .ph-header__menu-btn::after { inset: -18px -10px; }
  .ph-header__lang-btn::after { inset: -14px -6px; }
  .ph-footer__nav a { display: inline-block; padding: 11px 0; }
}

/* Footer compacto en móvil */
@media (max-width: 899px) {
  .ph-footer { padding: 24px 22px calc(22px + env(safe-area-inset-bottom, 0px)); }
  .ph-footer__inner { gap: 10px; }
  .ph-footer__brand { gap: 8px 14px; }
  .ph-footer__brand-logo { width: 112px; }
  .ph-footer__brand-divider { display: none; }
  .ph-footer__tagline { flex-basis: 100%; font-size: 13px; line-height: 1.35; }
  .ph-footer__nav { gap: 0 18px; font-size: 13.5px; }
  .ph-footer__nav a { padding: 7px 0; }
}