/* Kactus Digital — Crecimiento, de raíz. */
:root{--paper:#f3f0e7;--ink:#14291f;--muted:#586157;--lime:#d5e6a6;--line:#cccec1;--gutter:clamp(24px,5.5vw,100px);--sans:'Manrope',sans-serif;--serif:'Instrument Serif',Georgia,serif;--ease:cubic-bezier(.22,.61,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}p,h1,h2,h3{margin:0}h1,h2,h3{font-weight:500}em{font-family:var(--serif);font-weight:400}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #8b9f64;outline-offset:6px}::selection{background:var(--lime);color:var(--ink)}.skip{position:fixed;z-index:200;top:-90px;left:20px;padding:16px;background:var(--lime);color:var(--ink)}.skip:focus{top:10px}.eyebrow,.section-label{font-size:10px;font-weight:650;letter-spacing:1.5px;line-height:1.8}.section-label{display:flex;justify-content:space-between;margin-bottom:60px}.button{min-height:56px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:17px 25px;font-size:13px;font-weight:700;border:1px solid transparent;border-radius:2px;transition:background .25s,transform .25s}.button:hover{transform:translateY(-3px)}.button span{font-size:22px;line-height:1}.lime{background:var(--lime);color:var(--ink)}.lime:hover{background:#e6f3c1}.dark{background:var(--ink);color:var(--paper)}.dark:hover{background:#274437}.text-link{display:inline-flex;align-items:center;gap:28px;border-bottom:1px solid currentColor;padding:12px 0;font-size:12px;min-height:44px}.text-link span{font-size:20px}h2{font-size:clamp(42px,4.6vw,73px);letter-spacing:-2.6px;line-height:1.1}h2 em{font-size:1.12em}.header{height:100px;position:absolute;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);color:var(--paper);border-bottom:1px solid #ffffff26}.real-logo{width:194px;flex-shrink:0;display:block}.real-logo img{width:100%;height:auto}.desktop-nav{display:flex;align-items:center;gap:28px;font-size:11px;font-weight:600}.desktop-nav a{padding:15px 0}.desktop-nav a:hover{color:var(--lime)}.header-cta{border:1px solid #ffffff66;padding:12px 17px;display:flex;gap:20px;align-items:center;min-height:44px;border-radius:40px;font-size:11px}.header-cta:hover{background:var(--paper);color:var(--ink)}.header-cta span{font-size:20px}.menu-toggle,.mobile-nav{display:none}
/* An immersive opening: type remains readable while the scene plays independently. */
.hero{position:relative;isolation:isolate;overflow:hidden;background:#10271e;color:var(--paper);height:100svh;min-height:810px;max-height:1120px;padding:165px var(--gutter) 120px;display:flex;align-items:center}.hero-art{position:absolute;inset:0;z-index:-3;overflow:hidden}.hero-art video,.hero-art canvas,.hero-poster{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-poster{object-position:65% center;opacity:.55}.hero-art canvas{opacity:0;transition:opacity 1.2s}.hero-art.scene-ready canvas{opacity:1}.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0c211dee 0%,#0c211dc4 26%,#0c211d38 62%,transparent 100%),linear-gradient(0deg,#0a1b17aa,transparent 23%,transparent 84%,#091e1966)}.hero-copy{position:relative;width:64%;max-width:850px}.hero .eyebrow{color:#d7ddcc;font-size:9px;letter-spacing:1.7px;display:flex;align-items:center;gap:12px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 14px #d5e6a680}.hero h1{font-size:clamp(75px,7.3vw,122px);line-height:1.04;letter-spacing:-5px;margin:28px 0 25px;font-weight:500}.hero h1 em{font-size:1.2em;color:var(--lime);line-height:.85;letter-spacing:-3px}.hero-intro{font-size:15px;line-height:1.85;max-width:400px;color:#dde0d4;margin:31px 0 27px}.hero-proof{display:block;font-size:11px;line-height:1.8;margin:28px 0 0;padding-left:31px;position:relative;color:#d5dbce}.hero-proof strong{font-weight:500;color:var(--paper)}.proof-mark{position:absolute;left:0;top:3px;font-size:24px;color:var(--lime)}.hero-foot{position:absolute;bottom:29px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;gap:25px;justify-content:space-between;border-top:1px solid #ffffff26;padding-top:24px}.discover{display:flex;align-items:center;gap:13px;font-size:8px;letter-spacing:1.1px}.circle-arrow{display:flex;align-items:center;justify-content:center;border:1px solid #ffffff50;border-radius:50%;width:32px;height:32px;font-size:17px}.art-caption{display:flex;align-items:center;gap:15px;font-size:8px;letter-spacing:1.4px;margin-left:auto}.art-caption i{width:27px;height:1px;background:#e7edd666}.motion-toggle{border:1px solid #ffffff40;background:#0c211d66;border-radius:40px;min-height:44px;padding:10px 14px;font-size:10px;min-width:104px}.motion-toggle[hidden]{display:none}.motion-toggle:hover{background:#ffffff20}.hero-copy{animation:enter .9s var(--ease) both}@keyframes enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.intro{padding:100px var(--gutter) 72px}.intro-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:10vw}.intro h2{font-size:clamp(48px,5.2vw,83px)}.intro-aside{padding-top:8px;max-width:450px}.intro-aside p{font-size:15px;line-height:1.85;color:var(--muted);margin-bottom:19px}.intro-aside p:first-child{font-size:23px;line-height:1.5;letter-spacing:-.7px;color:var(--ink);margin-bottom:26px}.story-line{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:65px;padding-top:30px;font-size:17px;letter-spacing:-.5px}.story-line b{font-weight:400;color:#7f8b71}
.philosophy{display:grid;grid-template-columns:1.04fr 1fr;background:#e6e7dc;min-height:700px}.philosophy-art{min-width:0;position:relative;overflow:hidden;min-height:650px}.philosophy-art>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% center;filter:saturate(.7)}.philosophy-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#13261bd9,transparent 55%)}.clinic-caption{position:absolute;bottom:45px;left:var(--gutter);right:40px;color:var(--paper);z-index:1}.clinic-caption>span{font-size:9px;letter-spacing:1.8px}.clinic-caption strong{font-family:var(--serif);font-weight:400;display:flex;justify-content:space-between;font-size:64px;margin-top:12px}.clinic-caption strong span{font-family:var(--sans);font-size:45px}.philosophy-copy{padding:70px 5.5vw 65px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.philosophy-copy h2{font-size:clamp(41px,4vw,65px);margin:27px 0;letter-spacing:-2.3px}.philosophy-copy>p:not(.eyebrow){font-size:14px;line-height:1.85;margin-bottom:17px;max-width:450px}.philosophy-copy .owner-statement{font-weight:700;font-size:17px!important}.clinic-learning{border-top:1px solid #bfc5b6;padding-top:20px;margin-top:7px;margin-bottom:15px;max-width:430px;width:100%}.clinic-learning span{font-size:8px;letter-spacing:1.2px}.clinic-learning p{font-family:var(--serif);font-size:26px;line-height:1.3;margin-top:10px}
.clients{padding:82px var(--gutter) 85px}.clients-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:39px}.clients-heading h2{font-size:45px;margin-top:22px}.clients-heading>p{font-size:13px;line-height:1.9;color:var(--muted)}.client-gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.client-logo{height:142px;display:flex;align-items:center;justify-content:center;padding:19px;position:relative;overflow:hidden;border-right:1px solid var(--line)}.client-logo:last-child{border-right:0}.client-logo img{max-width:140px;max-height:72px;width:100%;object-fit:contain;filter:grayscale(1);mix-blend-mode:multiply;opacity:.85;transition:opacity .3s,filter .3s}.client-logo:hover img{filter:none;opacity:1}.client-logo.light-source img{filter:brightness(0);opacity:.75}.client-logo.light-source:hover img{filter:brightness(0);opacity:1}.client-logo.nutrapiel img{width:150px;max-width:none;max-height:none}.client-logo.modent img{width:100%;max-width:none;max-height:none;position:absolute}.client-logo.duo img{max-height:95px;max-width:125px}.client-logo.sabioncello img{max-width:100px;max-height:100px}
.ecosystem{background:var(--ink);color:var(--paper);padding:77px var(--gutter) 47px}.ecosystem .section-label{color:#bac6ad}.eco-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:63px;gap:30px}.eco-heading h2{font-size:clamp(50px,5.4vw,86px)}.eco-heading h2 em{color:var(--lime)}.eco-heading>p{font-size:14px;line-height:1.8;color:#c3ceb8}.patient-flow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding:0;margin:0;list-style:none;gap:0;position:relative}.patient-flow:before{content:'';position:absolute;top:80px;height:1px;background:#778567;left:6%;right:6%}.patient-flow li{min-width:0;position:relative}.patient-flow li:not(:last-child):after{content:'→';position:absolute;right:-8px;top:67px;color:var(--lime);font-size:18px}.flow-step{position:relative;border:0;background:none;color:var(--paper);text-align:left;padding:0 18px 24px 0;width:100%;display:flex;flex-direction:column;align-items:flex-start;min-height:280px}.flow-number{font-size:10px;color:#bac7ad;letter-spacing:1px}.flow-icon{font-size:35px;line-height:1;background:var(--ink);height:67px;width:67px;border:1px solid #687d56;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:31px 0 28px;transition:background .3s,color .3s,border-color .3s}.flow-step.active .flow-icon,.flow-step:hover .flow-icon{background:var(--lime);color:var(--ink);border-color:var(--lime)}.flow-step>strong{font-size:17px;letter-spacing:-.45px;min-height:30px}.flow-step>span:not(.flow-number,.flow-icon,.flow-owner){font-size:12px;line-height:1.75;color:#d0d9c7;margin-top:6px}.flow-owner{font-size:8px;letter-spacing:.1px;color:#b7c6a4;border-top:1px solid #3d5342;padding-top:13px;margin-top:18px;width:100%;line-height:1.7}.followup-branch{display:flex;align-items:center;gap:19px;margin:10px 0 36px 16.7%;border:1px solid #617552;border-top:0;border-radius:0 0 16px 16px;padding:16px 25px;max-width:66.6%;color:#cbd7c0}.followup-branch>span{font-size:25px;color:var(--lime)}.followup-branch p{font-size:11px;line-height:1.8}.followup-branch strong{font-weight:700;color:var(--paper)}.branch-return{margin-left:auto}.flow-detail{background:#20382a;display:grid;grid-template-columns:65px 1fr .65fr;gap:30px;padding:33px 35px;align-items:start;border-left:2px solid var(--lime);min-height:200px}.detail-counter{font-size:10px;letter-spacing:1px;padding-top:4px;color:#c4d3b4}.flow-detail .eyebrow{font-size:8px;letter-spacing:1px;color:#c8d9b6}.flow-detail h3{font-size:23px;letter-spacing:-.7px;line-height:1.4;margin:13px 0 12px;max-width:510px}.flow-detail p#stage-copy{font-size:12px;line-height:1.85;color:#c9d4c0;max-width:550px}.flow-deliverable{border-left:1px solid #506446;padding-left:28px;margin-top:4px}.flow-deliverable span{display:block;font-size:8px;letter-spacing:1.2px;color:#b1c5a0;margin-bottom:18px}.flow-deliverable strong{font-size:13px;font-weight:500;line-height:2}.flow-bottom{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:29px}.flow-bottom>p{font-size:10px;line-height:1.8;color:#c2d1b5;display:flex;align-items:center;gap:13px}.flow-bottom>p>span{font-size:25px;color:var(--lime)}.flow-bottom .text-link{font-size:10px}
.services{padding:98px var(--gutter);display:grid;grid-template-columns:1fr 1.1fr;gap:7vw}.services-heading h2{font-size:clamp(38px,3.8vw,60px);margin:25px 0}.services-heading>p:last-child{font-size:14px;line-height:1.8;color:var(--muted)}.service-list{border-top:1px solid var(--ink)}.service-row{display:grid;grid-template-columns:24px 1fr 24px;gap:20px;border-bottom:1px solid var(--line);padding:31px 0;transition:padding .3s}.service-row:hover{padding-left:8px}.service-row>span{font-size:9px;padding-top:9px}.service-row h3{font-size:23px;letter-spacing:-.6px;line-height:1.4}.service-row p{font-size:13px;line-height:1.8;margin:10px 0 16px;color:var(--muted)}.service-row small{font-size:8px;letter-spacing:.5px;line-height:1.8;display:block}.service-row>b{font-size:23px;font-weight:400;padding-top:3px}
.team{padding:80px var(--gutter) 65px;background:#e8e7df}.team-heading{display:grid;grid-template-columns:1.65fr 1fr;gap:7vw;align-items:end;margin-bottom:55px}.team-heading h2{font-size:clamp(37px,3.9vw,62px);line-height:1.16;letter-spacing:-2px}.team-heading>div{max-width:370px;padding-bottom:5px}.team-heading p{font-size:14px;line-height:1.85}.team-heading p+p{margin-top:13px;color:var(--muted);font-size:11px}.team-gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px;align-items:start;padding-bottom:35px}.team-portrait{margin:0;overflow:hidden;aspect-ratio:2/3;background:#dddacf}.team-portrait:nth-child(even){margin-top:35px}.team-portrait img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .7s var(--ease)}.team-portrait:hover img{transform:scale(1.03)}.team-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #c4c8b9;padding-top:23px;gap:25px}.team-bottom>span{font-size:8px;font-weight:600;letter-spacing:1.3px}.team-bottom .text-link{font-size:11px}
.faq{display:grid;grid-template-columns:1fr 1.1fr;gap:8vw;padding:100px var(--gutter)}.faq h2{font-size:clamp(37px,3.4vw,55px);margin:27px 0}.faq>div>p:last-child{font-size:14px;line-height:1.8;color:var(--muted)}.faq-list{border-top:1px solid var(--ink)}.faq details{border-bottom:1px solid var(--line)}.faq summary{list-style:none;display:flex;align-items:center;gap:20px;justify-content:space-between;padding:24px 0;min-height:78px;font-size:14px;line-height:1.65;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:23px;font-weight:400;flex-shrink:0;transition:transform .2s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:13px;color:var(--muted);line-height:1.95;padding:0 25px 24px 0}.faq details a{text-decoration:underline;text-underline-offset:3px}
.contact{margin:0 18px;background:var(--lime);padding:45px calc(var(--gutter) - 18px) 35px}.contact-top{display:flex;justify-content:space-between;align-items:center}.contact-top>span{font-size:43px}.contact h2{font-size:clamp(80px,10.4vw,170px);letter-spacing:-6px;line-height:1;margin:35px 0 53px}.contact h2 em{letter-spacing:-3px;font-size:1.07em}.contact-bottom{border-top:1px solid #aabb8a;display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:28px}.contact-bottom p{font-size:13px;line-height:1.85}.contact-alt{font-size:10px;line-height:1.8;margin-top:27px}.contact-alt a{text-decoration:underline;text-underline-offset:4px;margin-left:5px}footer{padding:48px var(--gutter) 24px}.footer-main{display:flex;align-items:center;gap:35px;padding-bottom:30px}.footer-main .real-logo{width:173px}.footer-main>p{font-size:11px;margin-right:auto}.footer-main>a:not(.real-logo){font-size:11px;min-height:44px;display:flex;align-items:center}.footer-services{border-top:1px solid var(--line);padding:25px 0;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:10px}.footer-services a{padding:7px 0}.footer-bottom{border-top:1px solid var(--line);padding-top:21px;display:flex;justify-content:space-between;gap:20px;font-size:9px;color:var(--muted)}.footer-bottom a{padding:5px 0}
@media(min-width:1550px){.hero{padding-top:170px}.hero h1{margin-top:35px}.hero-intro{font-size:17px;max-width:465px}.hero-proof{font-size:12px}.hero .eyebrow{font-size:11px}}
@media(max-width:1100px){.desktop-nav{gap:18px;font-size:10px}.header .real-logo{width:170px}.header-cta{font-size:10px;gap:13px}.hero{min-height:830px;padding-top:150px}.hero h1{font-size:83px;letter-spacing:-4px}.hero-copy{width:72%}.hero-intro{max-width:350px;font-size:14px}.hero-shade{background:linear-gradient(90deg,#0c211dfa,#0c211dc4 28%,#0c211d38 76%,transparent),linear-gradient(0deg,#0a1b17bb,transparent 23%)}.intro-grid{gap:7vw}.intro-aside p{font-size:14px}.intro-aside p:first-child{font-size:21px}.philosophy-copy{padding:55px 4vw}.philosophy-copy h2{font-size:43px}.philosophy-copy>p:not(.eyebrow){font-size:13px}.clinic-caption strong{font-size:55px}.client-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.client-logo{border-bottom:1px solid var(--line)}.client-logo:nth-child(3n){border-right:0}.client-logo:nth-last-child(-n+3){border-bottom:0}.patient-flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 20px}.patient-flow:before{display:none}.patient-flow li:after{top:67px!important;right:12px!important}.patient-flow li:nth-child(3):after{content:'↓';right:12px;top:auto!important;bottom:-16px}.flow-step{min-height:260px;padding-bottom:0}.flow-step>strong{font-size:20px}.flow-step>span:not(.flow-number,.flow-icon,.flow-owner){font-size:13px}.flow-owner{font-size:9px}.followup-branch{margin:37px 0;max-width:none}.flow-detail{grid-template-columns:45px 1fr;gap:23px}.flow-deliverable{grid-column:2;border-left:0;border-top:1px solid #506446;padding:18px 0 0;margin:0}.flow-deliverable span{margin-bottom:5px}.flow-deliverable strong{font-size:11px}.flow-bottom{align-items:flex-start}.flow-bottom>p{max-width:340px}.services{grid-template-columns:.9fr 1.1fr;gap:5vw}.services-heading h2{font-size:39px}.service-row{gap:14px}.service-row h3{font-size:19px}.team-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.team-portrait{aspect-ratio:3/4}.team-portrait:nth-child(even){margin-top:0}.team-portrait:nth-child(3n+2){transform:translateY(25px)}.team-gallery{padding-bottom:48px}.team-heading{grid-template-columns:1.5fr 1fr;gap:4vw}.team-heading h2{font-size:40px}.team-heading p{font-size:13px}.faq{gap:6vw}.faq h2{font-size:40px}.faq summary{font-size:13px}.contact-bottom .button{font-size:11px;padding:17px 18px;gap:17px}.contact-bottom p{font-size:12px}}
@media(max-width:760px){:root{--gutter:25px}.header{height:82px}.header .real-logo{width:146px;margin-left:-7px}.desktop-nav{display:none}.header-cta{font-size:9px;min-height:42px;margin-left:auto;margin-right:17px;padding:9px 13px}.header-cta span{font-size:17px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;padding:0;background:none;border:0;width:26px;height:44px;flex-shrink:0}.menu-toggle span{height:1px;width:24px;background:var(--paper);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav:not([hidden]){position:absolute;top:81px;left:0;right:0;display:flex;flex-direction:column;background:#14291ffa;border-bottom:1px solid #ffffff40;padding:15px 25px 25px;gap:1px}.mobile-nav a{padding:14px 0;font-size:14px}.hero{height:auto;min-height:990px;max-height:none;padding:135px var(--gutter) 405px;display:block}.hero-copy{width:100%;max-width:none}.hero .eyebrow{font-size:7px;letter-spacing:1.2px;gap:9px}.status-dot{width:5px;height:5px}.hero h1{font-size:clamp(57px,12.7vw,90px);letter-spacing:-3px;line-height:1.07;margin:26px 0 24px}.hero h1 em{letter-spacing:-1px;font-size:1.22em}.hero-intro{font-size:14px;max-width:340px;margin:25px 0 23px;line-height:1.85}.hero .button{min-height:54px;font-size:11px;padding:16px 19px;gap:27px}.hero-proof{font-size:10px;line-height:1.8;margin-top:22px;padding-left:28px}.proof-mark{font-size:22px}.hero-shade{background:linear-gradient(180deg,#0c211dd9 0%,#0c211ddf 23%,#0c211d8c 45%,transparent 61%,#0c211d30 83%,#0c211dce 100%)}.hero-poster{object-position:72% 80%;object-fit:cover}.hero-foot{left:var(--gutter);right:var(--gutter);bottom:21px;gap:10px;padding-top:17px;align-items:center}.discover{font-size:7px;letter-spacing:.6px;gap:8px;max-width:165px;line-height:1.6}.circle-arrow{width:27px;height:27px;flex-shrink:0;font-size:15px}.art-caption{display:none}.motion-toggle{font-size:9px;padding:10px 12px;min-width:91px}.section-label{font-size:8px;letter-spacing:1px;margin-bottom:34px}.section-label span:last-child{display:none}.eyebrow{font-size:8px;letter-spacing:1.2px}h2{font-size:43px;letter-spacing:-1.8px}.intro{padding:58px var(--gutter) 44px}.intro-grid{grid-template-columns:1fr;gap:28px}.intro h2{font-size:51px;letter-spacing:-2px}.intro-aside{padding:0;max-width:none}.intro-aside p{font-size:14px;margin-bottom:17px}.intro-aside p:first-child{font-size:21px;max-width:310px;margin-bottom:22px}.text-link{font-size:11px}.story-line{display:grid;grid-template-columns:1fr 20px 1fr;gap:18px 9px;font-size:13px;line-height:1.5;margin-top:34px;padding-top:26px;letter-spacing:-.2px}.story-line>b:nth-of-type(2){display:none}.story-line>span:nth-of-type(3){grid-column:1}.story-line b{text-align:center}.philosophy{grid-template-columns:1fr;min-height:0}.philosophy-copy{padding:53px var(--gutter);order:0}.philosophy-copy h2{font-size:45px;letter-spacing:-1.8px;margin:24px 0}.philosophy-copy .owner-statement{font-size:16px!important}.philosophy-copy>p:not(.eyebrow){font-size:14px}.clinic-learning{margin-top:7px}.clinic-learning p{font-size:27px}.philosophy-art{min-height:380px;order:1}.philosophy-art>img{object-position:center}.clinic-caption{bottom:28px;left:var(--gutter);right:25px}.clinic-caption>span{font-size:8px}.clinic-caption strong{font-size:53px}.clients{padding:53px var(--gutter)}.clients-heading{display:block;margin-bottom:28px}.clients-heading h2{font-size:39px;margin-top:19px}.clients-heading>p{font-size:12px;margin-top:20px}.client-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.client-logo{height:125px;padding:17px}.client-logo:nth-child(3n){border-right:1px solid var(--line)}.client-logo:nth-child(2n){border-right:0}.client-logo:nth-last-child(-n+3){border-bottom:1px solid var(--line)}.client-logo:nth-last-child(-n+2){border-bottom:0}.client-logo img{max-width:125px;max-height:65px}.client-logo.nutrapiel img{width:140px;max-width:none;max-height:none}.client-logo.modent img{max-width:none;max-height:none}.client-logo.duo img{max-height:85px;max-width:110px}.client-logo.sabioncello img{max-width:95px;max-height:95px}.ecosystem{padding:52px var(--gutter) 34px}.eco-heading{display:block;margin-bottom:40px}.eco-heading h2{font-size:51px;letter-spacing:-2px}.eco-heading>p{font-size:14px;margin-top:25px}.patient-flow{display:block;padding-left:0}.patient-flow:before{display:block;left:30px;top:33px;bottom:93px;height:auto;width:1px;background:#6b815d}.patient-flow li{margin-bottom:18px}.patient-flow li:after{display:none!important}.flow-step{display:grid;grid-template-columns:65px 1fr;column-gap:18px;padding:9px 0 18px;min-height:150px}.flow-number{position:absolute;left:0;top:2px;transform:translateY(-8px);font-size:8px;background:var(--ink);padding:0 3px}.flow-icon{grid-column:1;grid-row:1/4;width:61px;height:61px;margin:10px 0 0;font-size:29px;position:relative}.flow-step>strong{grid-column:2;font-size:22px;min-height:0;margin:5px 0 7px}.flow-step>span:not(.flow-number,.flow-icon,.flow-owner){grid-column:2;font-size:13px;line-height:1.65;margin:0}.flow-step>span br{display:none}.flow-owner{grid-column:2;font-size:9px;letter-spacing:.1px;padding-top:10px;margin-top:11px}.followup-branch{margin:20px 0 27px;border:1px solid #617552;border-radius:2px;padding:17px 15px;gap:13px}.followup-branch p{font-size:12px;line-height:1.8}.branch-return{display:none}.flow-detail{grid-template-columns:1fr;padding:23px 23px;gap:15px;min-height:0}.detail-counter{font-size:9px}.flow-detail .eyebrow{font-size:8px;line-height:1.8}.flow-detail h3{font-size:23px;letter-spacing:-.5px;margin-top:13px}.flow-detail p#stage-copy{font-size:13px}.flow-deliverable{grid-column:1;margin-top:5px}.flow-deliverable strong{font-size:12px}.flow-bottom{display:block;margin-top:23px}.flow-bottom>p{font-size:11px;max-width:none;align-items:flex-start}.flow-bottom .text-link{font-size:10px;margin-top:13px}.services{display:block;padding:56px var(--gutter)}.services-heading h2{font-size:42px;margin:24px 0}.services-heading>p:last-child{font-size:14px}.service-list{margin-top:33px}.service-row{grid-template-columns:19px 1fr 22px;gap:13px;padding:27px 0}.service-row h3{font-size:21px}.service-row p{font-size:13px}.service-row small{font-size:8px;line-height:1.8}.team{padding:53px var(--gutter) 36px}.team-heading{grid-template-columns:1fr;gap:25px;margin-bottom:30px}.team-heading h2{font-size:39px;letter-spacing:-1.9px}.team-heading p{font-size:14px}.team-heading p+p{font-size:11px}.team-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding-bottom:31px}.team-portrait{aspect-ratio:2/3}.team-portrait:nth-child(3n+2){transform:none}.team-portrait:nth-child(even){margin-top:23px}.team-bottom{align-items:flex-start;flex-direction:column;gap:12px;padding-top:20px}.team-bottom>span{font-size:8px;letter-spacing:.9px}.team-bottom .text-link{font-size:10px}.faq{display:block;padding:56px var(--gutter)}.faq h2{font-size:41px;letter-spacing:-1.8px;margin:24px 0}.faq>div>p:last-child{font-size:14px}.faq-list{margin-top:32px}.faq summary{font-size:14px;padding:23px 0}.faq details p{font-size:13px}.contact{margin:0 10px;padding:29px 20px}.contact-top .eyebrow{font-size:7px;letter-spacing:1px}.contact-top>span{font-size:29px}.contact h2{font-size:clamp(61px,14.5vw,104px);letter-spacing:-3px;margin:30px 0 34px}.contact h2 em{letter-spacing:-2px}.contact-bottom{display:block;padding-top:24px}.contact-bottom p{font-size:13px}.contact-bottom .button{font-size:11px;margin-top:24px;min-height:55px;padding:17px 19px;gap:28px}.contact-alt{font-size:10px;max-width:270px;line-height:2;margin-top:21px}.contact-alt a{margin-left:0;display:inline-block}footer{padding:33px var(--gutter) 23px}.footer-main{flex-wrap:wrap;gap:20px 28px;padding-bottom:20px}.footer-main .real-logo{width:145px;margin-left:-5px}.footer-main>p{font-size:10px;margin:0 0 0 auto}.footer-main>a:not(.real-logo){font-size:11px;min-height:30px}.footer-services{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;padding:20px 0;font-size:10px;line-height:1.75}.footer-bottom{font-size:8px;line-height:1.8;align-items:center}.footer-bottom>span{max-width:215px}}
@media(max-width:365px){:root{--gutter:21px}.header-cta{font-size:8px;gap:8px;padding:9px 11px;margin-right:12px}.header .real-logo{width:134px}.hero h1{font-size:53px;letter-spacing:-2.9px}.hero .eyebrow{font-size:6.5px}.hero .button{font-size:10px;gap:19px}.team-heading h2{font-size:35px}.contact h2{font-size:57px}.flow-step{column-gap:15px}.flow-step>strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Let the live sculpture take over from its still-image fallback. */
.hero-art.scene-ready .hero-poster{opacity:0;transition:opacity .65s}
@media(min-width:761px) and (max-width:1100px){.hero h1{font-size:clamp(61px,7.45vw,81px);letter-spacing:-3.3px}.hero-copy{width:75%}.hero{padding-top:146px;min-height:830px}.hero .eyebrow{font-size:8px;letter-spacing:1.2px}.hero-shade{background:linear-gradient(90deg,#0c211dfa,#0c211dc9 32%,#0c211d22 72%,transparent),linear-gradient(0deg,#0a1b17bb,transparent 23%)}}
@media(max-width:760px){.hero-art canvas{top:43%;height:57%}.hero-art.scene-ready+.hero-shade{background:linear-gradient(180deg,#0c211d 0%,#0c211de0 30%,#0c211d66 46%,transparent 61%,#0c211d30 83%,#0c211dce 100%)}}
@media(min-width:761px) and (max-width:1100px){.patient-flow li:nth-child(4){grid-column:3;grid-row:2}.patient-flow li:nth-child(5){grid-column:2;grid-row:2}.patient-flow li:nth-child(6){grid-column:1;grid-row:2}.patient-flow li:nth-child(4):after,.patient-flow li:nth-child(5):after{content:'←';left:-28px;right:auto!important}.patient-flow li:nth-child(3):after{left:25px;right:auto!important}}
@media(max-width:760px){.hero h1{font-size:clamp(45px,12.6vw,74px);letter-spacing:-2.5px}.hero{padding-top:133px;padding-bottom:390px;min-height:970px}.hero-art canvas{top:53%;height:47%}.hero-poster{top:47%;height:53%;object-position:75% center}.hero-proof{max-width:270px}.hero-art.scene-ready+.hero-shade{background:linear-gradient(180deg,#0c211d 0%,#0c211d 37%,#0c211d80 50%,transparent 65%,#0c211d20 85%,#0c211dce 100%)}}
@media(max-width:365px){.hero h1{font-size:43px;letter-spacing:-2.3px}}
.client-logo img{height:auto}
.flow-step:hover:not(.active) .flow-icon{background:#294633;color:var(--paper);border-color:var(--lime)}
@media(max-width:365px){.header-cta{display:none}.menu-toggle{margin-left:auto}.contact h2{font-size:50px}}
@media(max-width:760px){.hero-poster{mask-image:linear-gradient(to bottom,transparent,black 24%);-webkit-mask-image:linear-gradient(to bottom,transparent,black 24%)}}
/* Real campaign films: editorial screens and a deliberate, user-triggered player. */
.campaigns{padding:30px var(--gutter) 85px}.campaign-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:45px}.campaign-heading h2{font-size:clamp(45px,4.8vw,76px)}.campaign-heading>p{font-size:14px;line-height:1.85;color:var(--muted);max-width:320px}.campaign-heading h2 em{font-size:1.08em}.film-feature{display:grid;grid-template-columns:1.7fr 1fr;gap:4vw;align-items:center;padding-bottom:48px;border-bottom:1px solid var(--line)}.film-cover{margin:0;position:relative;background:#203429;overflow:hidden;isolation:isolate}.film-cover a{display:block;position:relative;overflow:hidden;isolation:isolate}.film-cover img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}.film-cover a:after{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(0deg,#0a1c17b3,transparent 50%)}.film-cover a:hover img{transform:scale(1.025)}.film-feature .film-cover a{aspect-ratio:16/9}.film-duration{position:absolute;right:18px;top:18px;z-index:1;border:1px solid #ffffff60;border-radius:30px;background:#10231e55;color:white;padding:7px 10px;font-size:10px;letter-spacing:.6px}.film-play{display:flex;align-items:center;gap:12px;position:absolute;bottom:21px;left:22px;z-index:1;color:#fff;font-size:11px;font-weight:600}.film-play>span:first-child{width:44px;height:44px;border:1px solid #ffffffba;border-radius:50%;display:flex;align-items:center;justify-content:center;padding-left:2px;font-size:13px;backdrop-filter:blur(8px);background:#ffffff15;transition:background .2s,color .2s}.film-cover a:hover .film-play>span:first-child{background:var(--lime);color:var(--ink);border-color:var(--lime)}.film-cover a:focus-visible{outline-offset:-5px;outline-color:var(--lime)}.film-copy .eyebrow{font-size:8px;letter-spacing:1.2px}.film-copy h3{font-size:clamp(26px,2.7vw,42px);letter-spacing:-1.2px;line-height:1.2;margin:19px 0}.film-copy h3 em{font-size:1.1em}.film-copy>p:not(.eyebrow){font-size:14px;line-height:1.85;color:var(--muted)}.film-copy .text-link{margin-top:12px;font-size:11px}.film-credit{font-size:9px;letter-spacing:.4px;color:var(--muted);line-height:1.8;margin-top:18px;display:block}.film-pair{display:grid;grid-template-columns:1fr 1fr;gap:4vw;padding-top:47px}.film-card{display:grid;grid-template-columns:1fr 1.1fr;gap:24px;align-items:center}.film-card .film-cover a{aspect-ratio:9/16}.film-card .film-copy h3{font-size:27px;line-height:1.25;letter-spacing:-.8px}.film-card .film-copy>p:not(.eyebrow){font-size:12px;line-height:1.9}.film-card .film-play{left:14px;bottom:17px;font-size:9px;gap:9px}.film-card .film-play>span:first-child{width:34px;height:34px;flex-shrink:0;font-size:10px}.film-card .film-duration{top:12px;right:12px;font-size:9px;padding:6px 8px}.film-card .film-copy .eyebrow{font-size:7px;letter-spacing:.9px}.film-card .film-credit{font-size:8px}.campaign-note{border-top:1px solid var(--line);padding-top:23px;margin-top:47px;display:flex;justify-content:space-between;gap:35px;align-items:center}.campaign-note>p{font-size:11px;line-height:1.8;color:var(--muted);max-width:570px}.campaign-note .text-link{font-size:11px;flex-shrink:0}.film-dialog{padding:0;border:1px solid #ffffff30;width:min(1040px,calc(100vw - 36px));max-height:calc(100svh - 32px);background:#10241c;color:var(--paper);overflow:auto;border-radius:3px}.film-dialog::backdrop{background:#071611de;backdrop-filter:blur(8px)}body:has(.film-dialog[open]){overflow:hidden}.film-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:23px 28px;border-bottom:1px solid #ffffff25}.film-dialog-header .eyebrow{font-size:8px;color:#c8d4bd}.film-dialog-header h2{font-size:26px;line-height:1.25;letter-spacing:-.7px;margin-top:6px}.film-close{display:flex;align-items:center;gap:18px;border:1px solid #ffffff55;border-radius:30px;background:none;color:var(--paper);padding:10px 16px;min-height:44px;font-size:11px;flex-shrink:0}.film-close span{font-size:23px;font-weight:400;line-height:1}.film-close:hover{background:var(--paper);color:var(--ink)}.film-dialog video{display:block;width:100%;height:min(61svh,600px);background:#071510;object-fit:contain}.film-dialog-footer{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;padding:19px 28px 23px}.film-dialog-footer>p{font-size:12px;line-height:1.9;color:#c5d0bc;max-width:690px}.film-dialog-footer>a{font-size:10px;text-decoration:underline;text-underline-offset:5px;white-space:nowrap;padding-top:5px;min-height:44px}.film-error{background:#edf0e0;color:#203429;margin:0;padding:16px 28px;font-size:13px;line-height:1.8}.film-error[hidden]{display:none}.film-dialog::cue{background:#092216ed;color:#fff;font-family:var(--sans)}
@media(max-width:1100px){.film-feature{grid-template-columns:1.4fr 1fr;gap:30px}.film-copy h3{font-size:29px}.film-copy>p:not(.eyebrow){font-size:13px}.film-pair{gap:27px}.film-card{gap:17px;grid-template-columns:1fr 1fr}.film-card .film-copy h3{font-size:24px}.film-card .film-play>span:last-child{display:none}.film-card .film-copy>p:not(.eyebrow){font-size:11px}.campaign-heading{gap:40px}.campaign-heading h2{font-size:49px}.campaign-heading>p{max-width:270px;font-size:13px}.campaign-note>p{font-size:10px}.campaign-note .text-link{font-size:10px}}
@media(max-width:760px){.campaigns{padding:0 var(--gutter) 49px}.campaigns .section-label{margin-bottom:27px}.campaign-heading{display:block;margin-bottom:30px}.campaign-heading h2{font-size:46px;letter-spacing:-1.9px}.campaign-heading>p{max-width:330px;font-size:14px;margin-top:23px}.film-feature{grid-template-columns:1fr;gap:24px;padding-bottom:30px}.film-feature .film-cover a{aspect-ratio:16/10}.film-play{bottom:17px;left:16px;font-size:10px;gap:10px}.film-play>span:first-child{width:37px;height:37px;font-size:11px}.film-duration{top:13px;right:13px;font-size:9px}.film-copy h3{font-size:33px;letter-spacing:-1px;margin:16px 0}.film-copy>p:not(.eyebrow){font-size:14px}.film-credit{font-size:9px}.film-pair{grid-template-columns:1fr;gap:28px;padding-top:30px}.film-card{grid-template-columns:1fr 1fr;gap:19px;align-items:center}.film-card+.film-card{border-top:1px solid var(--line);padding-top:28px}.film-card .film-copy h3{font-size:26px;margin:14px 0;letter-spacing:-.8px}.film-card .film-copy>p:not(.eyebrow){font-size:12px;line-height:1.8}.film-card .film-copy .eyebrow{font-size:7px;letter-spacing:.6px}.film-card .film-credit{font-size:8px;margin-top:13px}.film-card .film-play{bottom:13px;left:12px}.film-card .film-copy .text-link{font-size:10px;gap:18px;margin-top:6px}.campaign-note{display:block;padding-top:22px;margin-top:30px}.campaign-note>p{font-size:11px}.campaign-note .text-link{font-size:11px;margin-top:12px}.film-dialog{width:calc(100vw - 18px);max-height:calc(100svh - 18px)}.film-dialog-header{padding:18px;gap:12px;align-items:flex-start}.film-dialog-header h2{font-size:22px}.film-close{padding:10px 12px;gap:10px;font-size:10px}.film-dialog-header .eyebrow{font-size:7px;letter-spacing:.7px}.film-dialog video{height:59svh}.film-dialog-footer{display:block;padding:16px 18px}.film-dialog-footer>p{font-size:11px;line-height:1.8}.film-dialog-footer>a{display:inline-block;margin-top:9px}.film-error{padding:13px 18px;font-size:12px}}
@media(max-width:365px){.campaign-heading h2{font-size:41px}.film-card{gap:15px;grid-template-columns:.9fr 1fr}.film-card .film-copy h3{font-size:23px}.film-card .film-copy>p:not(.eyebrow){font-size:11px}.film-dialog-header h2{font-size:20px}.film-close{font-size:0;gap:0;width:43px;justify-content:center;padding:8px}}
.client-cases{padding:72px var(--gutter) 77px;background:#e7e9df}.cases-heading{display:grid;grid-template-columns:1.3fr 1fr;column-gap:10vw;align-items:end;margin-bottom:42px}.cases-heading>.eyebrow{grid-column:1/-1;margin-bottom:26px}.cases-heading h2{font-size:clamp(43px,4.4vw,68px)}.cases-heading>p:last-child{font-size:14px;line-height:1.85;max-width:330px;padding-bottom:6px;color:var(--muted)}.cases-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #b9c2ae}.case-story{padding:32px 4vw 0 0}.case-story+.case-story{padding:32px 0 0 4vw;border-left:1px solid #b9c2ae}.case-brand{display:flex;align-items:center;gap:20px;height:76px;margin-bottom:23px}.case-number{font-size:9px;color:var(--muted)}.case-brand img{height:73px;width:110px;object-fit:contain;mix-blend-mode:multiply;filter:grayscale(1)}.case-brand>span:last-child{font-size:7px;letter-spacing:1.1px;line-height:1.8;margin-left:auto;max-width:125px}.case-story h3{font-size:clamp(28px,3vw,43px);letter-spacing:-1.2px;line-height:1.18;margin:20px 0 21px}.case-story h3 em{font-size:1.09em}.case-story>p{font-size:13px;line-height:1.85;color:var(--muted);max-width:485px}.case-result{border-left:2px solid #829d53;padding-left:20px;margin:27px 0}.case-result>span{font-size:8px;letter-spacing:1px;display:block;margin-bottom:13px;color:#566947}.case-result>strong{font-size:19px;font-weight:500;line-height:1.5;letter-spacing:-.4px;display:block}.case-result>p{font-size:12px;line-height:1.85;color:var(--muted);margin-top:13px;max-width:465px}.case-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:9px;line-height:1.8;border-top:1px solid #c4cabd;padding-top:16px;color:var(--muted)}.case-foot a{min-height:44px;display:flex;align-items:center;color:var(--ink)}
@media(max-width:1100px){.case-brand{gap:12px}.case-brand>span:last-child{font-size:6px;letter-spacing:.5px;max-width:92px}.case-story h3{font-size:32px}.case-story>p{font-size:12px}.case-result>strong{font-size:17px}.case-foot{display:block}.case-foot>a{font-size:10px}.desktop-nav{gap:20px}}
@media(max-width:760px){.client-cases{padding:47px var(--gutter) 45px}.cases-heading{display:block;margin-bottom:31px}.cases-heading>.eyebrow{margin-bottom:23px}.cases-heading h2{font-size:42px;letter-spacing:-1.8px}.cases-heading>p:last-child{font-size:14px;margin-top:23px;padding:0}.cases-list{grid-template-columns:1fr}.case-story,.case-story+.case-story{padding:24px 0 0;border-left:0}.case-story+.case-story{margin-top:29px;border-top:1px solid #b9c2ae}.case-brand{gap:18px;margin-bottom:16px}.case-brand>span:last-child{font-size:7px;max-width:111px}.case-brand img{height:68px;width:100px}.case-story h3{font-size:34px;letter-spacing:-1px}.case-story>p{font-size:14px}.case-result{padding-left:17px;margin:25px 0}.case-result>span{font-size:8px}.case-result>strong{font-size:20px}.case-result>p{font-size:13px}.case-foot{display:flex;font-size:8px}.case-foot>a{font-size:9px}.case-foot>span{max-width:160px}}
.client-voices{margin-top:54px;border-top:1px solid var(--line);padding-top:46px;display:grid;grid-template-columns:.85fr 1.65fr;gap:5vw;align-items:start;scroll-margin-top:25px}.voices-heading{padding-top:14px}.voices-heading .eyebrow{font-size:8px;letter-spacing:1.2px}.voices-heading h3{font-size:clamp(30px,3.1vw,48px);letter-spacing:-1.4px;line-height:1.17;margin:24px 0}.voices-heading h3 em{font-size:1.08em}.voices-heading>p:last-child{font-size:13px;line-height:1.85;color:var(--muted);max-width:260px}.voices-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.voice-card .film-cover a{aspect-ratio:9/16}.voice-card .film-cover img{object-fit:contain}.voice-card .film-play{bottom:19px;left:17px;gap:10px;font-size:9px}.voice-card .film-play>span:first-child{height:36px;width:36px;flex-shrink:0;font-size:11px}.voice-caption{padding-top:20px}.voice-caption .eyebrow{font-size:7px;letter-spacing:.8px;line-height:1.8}.voice-caption h4{font-weight:500;font-size:19px;line-height:1.5;letter-spacing:-.5px;margin:11px 0 8px}.voice-caption>p:not(.eyebrow){font-size:11px;line-height:1.8;color:var(--muted)}.voice-caption>a{font-size:8px;line-height:1.9;display:inline-block;margin-top:12px;min-height:44px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){.client-voices{grid-template-columns:.75fr 1.6fr;gap:4vw}.voices-heading h3{font-size:32px}.voices-grid{gap:19px}.voice-card .film-play>span:last-child{display:none}.voice-caption h4{font-size:17px}.voices-heading>p:last-child{font-size:12px}}
@media(max-width:760px){.client-voices{display:block;padding-top:31px;margin-top:32px}.voices-heading{padding-top:0;margin-bottom:27px}.voices-heading h3{font-size:36px;letter-spacing:-1.2px;margin:20px 0}.voices-heading>p:last-child{max-width:320px;font-size:14px}.voices-grid{gap:17px}.voice-card .film-play{left:13px;bottom:15px}.voice-card .film-duration{right:10px;top:10px}.voice-caption{padding-top:16px}.voice-caption .eyebrow{font-size:6px;letter-spacing:.7px;min-height:26px}.voice-caption h4{font-size:18px;line-height:1.5;margin-top:8px}.voice-caption>p:not(.eyebrow){font-size:11px}.voice-caption>a{font-size:8px;margin-top:10px}.voices-grid .film-cover a{aspect-ratio:9/16}}

.film-captions{font:inherit;font-size:11px;white-space:nowrap;color:inherit;background:transparent;border:1px solid #718174;border-radius:3px;min-height:44px;padding:10px 12px;cursor:pointer}.film-captions[aria-pressed="true"]{background:var(--lime);color:var(--ink);border-color:var(--lime)}.film-captions[hidden]{display:none}.film-captions:focus-visible{outline:2px solid var(--lime);outline-offset:3px}@media(max-width:760px){.film-captions{margin:10px 17px 0 0}}
