:root{--black:#090909;--black-soft:#111112;--paper:#f4f4f1;--white:#fff;--text:#101010;--muted:#686865;--line:#d2d2cd;--brass:#a97142;--brass-light:#d7a578;--teal:#4c7a6b;--sans:"Manrope",Arial,sans-serif;--mono:"DM Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:var(--black);color:var(--text);font:16px/1.55 var(--sans);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit}.shell{width:min(calc(100% - 80px),1640px);margin-inline:auto}.skip-link{position:fixed;top:-60px;left:20px;z-index:100;padding:10px 14px;background:#fff;color:#000;text-decoration:none}.skip-link:focus{top:12px}.eyebrow{margin:0;color:rgba(255,255,255,.53);font:500 10px/1.4 var(--mono);letter-spacing:.12em}.eyebrow.dark{color:#777}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}a:focus-visible,button:focus-visible{outline:2px solid var(--brass-light);outline-offset:4px}.dark-section{position:relative;padding:132px 0;background:var(--black);color:#fff}.light-section{position:relative;padding:126px 0;background:var(--paper);color:var(--text)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s cubic-bezier(.22,1,.36,1)}.reveal.in-view{opacity:1;transform:none}

/* Navigation */
.site-header{position:fixed;z-index:60;inset:10px 0 auto}.nav{position:relative;display:flex;align-items:center;height:58px;padding:0 30px;overflow:hidden;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(12,12,12,.68);color:#fff;box-shadow:0 12px 35px rgba(0,0,0,.22);backdrop-filter:blur(18px);transition:background .3s,border-color .3s}.site-header.scrolled .nav{background:rgba(12,12,12,.92);border-color:rgba(255,255,255,.3)}.nav:before{content:"";position:absolute;z-index:0;top:-20%;bottom:-20%;right:-32%;width:28%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.03) 28%,rgba(169,113,66,.18) 50%,rgba(255,255,255,.05) 72%,transparent);filter:blur(4px);transform:skewX(-20deg);animation:navGlow 7s linear infinite;pointer-events:none}.nav>*{position:relative;z-index:1}.brand-logo{display:flex;align-items:center;width:77px;height:38px;overflow:hidden}.brand-logo img{display:block;width:100%;height:auto}.desktop-nav{display:flex;flex:1;align-items:center;justify-content:space-evenly;gap:12px;margin-right:4px}.desktop-nav a{position:relative;color:rgba(255,255,255,.76);font-size:12px;text-decoration:none;transition:color .2s}.desktop-nav a:hover,.desktop-nav a.active{color:#fff}.desktop-nav a.active:after{content:"";position:absolute;right:0;bottom:-8px;left:0;height:1px;background:var(--brass-light)}.menu-toggle{display:none;margin-left:auto;border:0;background:none;color:#fff}.menu-overlay{position:fixed;z-index:50;inset:0;padding-top:90px;background:rgba(8,8,8,.97);backdrop-filter:blur(18px);transform:translateY(-105%);transition:transform .4s cubic-bezier(.22,1,.36,1)}.menu-overlay.open{transform:none}.mobile-menu{display:flex;width:calc(100% - 40px);margin:auto;flex-direction:column}.mobile-menu a{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.14);color:#fff;font-weight:700;font-size:clamp(29px,9vw,42px);line-height:1.08;letter-spacing:-.055em;text-decoration:none}.mobile-menu a.active{color:var(--brass-light)}

/* Hero */
.portfolio-hero{position:relative;min-height:100svh;padding:150px 0 0;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 74% 25%,#27232a 0,#111114 34%,#090909 68%);color:#fff}.hero-glow{position:absolute;z-index:-1;right:-18%;top:-42%;width:86vw;height:86vw;border-radius:50%;background:conic-gradient(from 100deg,transparent,rgba(76,122,107,.15),rgba(113,101,128,.18),rgba(169,113,66,.24),transparent 66%);filter:blur(100px);animation:auraDrift 15s ease-in-out infinite alternate}.hero-copy{position:relative;z-index:4}.hero-copy h1{max-width:1320px;margin:25px 0 34px;font-size:clamp(70px,9.6vw,162px);font-weight:800;line-height:.83;letter-spacing:-.085em;animation:heroUp .75s .1s both}.hero-bottom{display:grid;grid-template-columns:minmax(300px,680px) auto;align-items:end;gap:80px}.hero-bottom>p{margin:0;color:rgba(255,255,255,.68);font-size:19px;line-height:1.62;animation:heroUp .7s .22s both}.round-link{display:inline-flex;align-items:center;justify-self:end;gap:20px;padding:9px 9px 9px 22px;border:1px solid rgba(255,255,255,.31);border-radius:999px;background:rgba(255,255,255,.05);font-size:13px;font-weight:700;text-decoration:none;transition:transform .25s,background .25s,color .25s}.round-link span{display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#fff;color:#111;font-size:18px}.round-link:hover{transform:translateY(-4px);background:#fff;color:#111}.hero-gallery{position:relative;width:min(calc(100% - 80px),1640px);height:clamp(360px,37vw,650px);margin:58px auto 0;perspective:1600px}.hero-card{position:absolute;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:22px;background:#111;box-shadow:0 35px 100px rgba(0,0,0,.48);transition:transform .7s cubic-bezier(.22,1,.36,1)}.hero-card img{display:block;width:100%;height:100%;object-fit:cover}.hero-card-a{z-index:3;left:16%;top:0;width:68%;height:89%;transform:rotateX(4deg)}.hero-card-b{z-index:2;left:-5%;top:15%;width:47%;height:71%;transform:rotate(-4deg) translateZ(-80px)}.hero-card-c{z-index:1;right:-5%;top:17%;width:47%;height:70%;transform:rotate(4deg) translateZ(-100px)}.hero-gallery:hover .hero-card-a{transform:translateY(-8px) rotateX(1deg)}.hero-gallery:hover .hero-card-b{transform:translate(-10px,7px) rotate(-5deg)}.hero-gallery:hover .hero-card-c{transform:translate(10px,7px) rotate(5deg)}.hero-index{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:22px 0 26px;border-top:1px solid rgba(255,255,255,.14);color:#777;font:8px var(--mono);letter-spacing:.1em}

/* Intro */
.portfolio-intro{overflow:hidden;background:linear-gradient(135deg,#f4f4f1,#efeee9 68%,#e7e1da)}.intro-grid{display:grid;grid-template-columns:210px minmax(0,1fr);gap:60px}.intro-grid h2{max-width:1250px;margin:0;font-size:clamp(55px,7.2vw,116px);font-weight:800;line-height:.91;letter-spacing:-.075em}.intro-grid>div>p{max-width:780px;margin:38px 0 0;color:var(--muted);font-size:19px;line-height:1.65}.capability-line{display:grid;grid-template-columns:repeat(4,1fr);margin-top:85px;border-top:1px solid #aaa;border-bottom:1px solid var(--line)}.capability-line span{padding:26px 24px;border-right:1px solid var(--line);font:500 10px/1.5 var(--mono);letter-spacing:.06em}.capability-line span:first-child{padding-left:0}.capability-line span:last-child{border-right:0}

/* Cases */
.case-study{padding-bottom:118px;overflow:hidden}.case-study.dark-section{background:linear-gradient(145deg,#090909,#111 68%,#15120f)}.case-study.light-section{background:var(--paper)}.case-heading{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);align-items:end;gap:90px;margin-bottom:64px}.case-heading h2{max-width:1120px;margin:19px 0 0;font-size:clamp(56px,6.4vw,104px);font-weight:800;line-height:.91;letter-spacing:-.075em}.case-heading>p{max-width:590px;margin:0 0 4px;color:var(--muted);font-size:18px;line-height:1.65}.dark-section .case-heading>p{color:rgba(255,255,255,.6)}.case-visual{position:relative;padding:clamp(18px,2.4vw,38px);overflow:hidden;border-radius:30px;isolation:isolate}.case-visual:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 50% 15%,rgba(169,113,66,.15),transparent 57%)}.case-visual.dark-frame{border:1px solid rgba(255,255,255,.15);background:#0d0d0e}.case-visual.light-frame{border:1px solid #cbc9c3;background:linear-gradient(135deg,#eae8e2,#fff)}.case-visual img{display:block;width:100%;border-radius:18px;box-shadow:0 28px 85px rgba(0,0,0,.2);transition:transform .65s cubic-bezier(.22,1,.36,1)}.case-visual:hover img{transform:scale(1.012)}.case-visual small{display:block;margin-top:18px;color:#777;font:8px var(--mono);letter-spacing:.08em}.case-details{display:grid;grid-template-columns:repeat(3,1fr);margin-top:55px;border-top:1px solid var(--line)}.dark-section .case-details{border-color:rgba(255,255,255,.16)}.case-details>div{min-height:210px;padding:30px 34px;border-right:1px solid var(--line)}.dark-section .case-details>div{border-color:rgba(255,255,255,.14)}.case-details>div:first-child{padding-left:0}.case-details>div:last-child{border-right:0}.case-details span{color:var(--brass);font:500 9px var(--mono);letter-spacing:.1em}.dark-section .case-details span{color:var(--brass-light)}.case-details p{max-width:470px;margin:18px 0 0;color:var(--muted);line-height:1.65}.dark-section .case-details p{color:rgba(255,255,255,.6)}

.case-visual img{aspect-ratio:3/2;object-fit:cover}

/* Featured credit case */
.featured-case{border-bottom:1px solid rgba(255,255,255,.12);background:radial-gradient(circle at 82% 16%,rgba(76,122,107,.2),transparent 32%),radial-gradient(circle at 16% 78%,rgba(169,113,66,.12),transparent 30%),#090b0c!important}.featured-heading{align-items:end}.featured-summary>p{margin:0;color:rgba(255,255,255,.62);font-size:18px;line-height:1.65}.case-impact{display:flex;align-items:center;gap:16px;margin-top:30px;padding-top:25px;border-top:1px solid rgba(255,255,255,.17);color:rgba(255,255,255,.76);font-size:13px;font-weight:600;line-height:1.45}.case-impact span{color:#fff;font-size:clamp(37px,4vw,62px);font-weight:800;line-height:.9;letter-spacing:-.07em}.project-carousel{position:relative;padding:22px;overflow:hidden;border:1px solid rgba(255,255,255,.17);border-radius:30px;background:rgba(16,19,20,.84);box-shadow:0 38px 110px rgba(0,0,0,.35);backdrop-filter:blur(16px)}.project-carousel-topline{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:1px 3px 19px;color:rgba(255,255,255,.47);font:500 8px/1.4 var(--mono);letter-spacing:.09em}.project-carousel-viewport{overflow-x:auto;overscroll-behavior-x:contain;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab}.project-carousel-viewport::-webkit-scrollbar{display:none}.project-carousel-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none}.project-carousel-track{display:flex;gap:18px}.project-slide{flex:0 0 calc(100% - clamp(45px,7vw,112px));margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:#101415;scroll-snap-align:start;scroll-snap-stop:always}.project-slide img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#eef1f0}.project-slide figcaption{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:18px 20px;border-top:1px solid rgba(255,255,255,.12)}.project-slide figcaption span{color:#fff;font-size:13px;font-weight:700}.project-slide figcaption small{color:rgba(255,255,255,.49);font:8px/1.5 var(--mono);letter-spacing:.04em;text-align:right}.project-carousel-controls{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:24px;padding:19px 3px 1px}.carousel-arrows{display:flex;gap:8px}.carousel-arrows button{display:grid;place-items:center;width:39px;height:39px;padding:0;border:1px solid rgba(255,255,255,.26);border-radius:50%;background:rgba(255,255,255,.05);color:#fff;font-size:17px;cursor:pointer;transition:transform .22s,background .22s,color .22s}.carousel-arrows button:hover{transform:translateY(-2px);background:#fff;color:#111}.carousel-dots{display:flex;align-items:center;gap:8px}.carousel-dots button{width:22px;height:3px;padding:0;border:0;border-radius:99px;background:rgba(255,255,255,.22);cursor:pointer;transition:width .25s,background .25s}.carousel-dots button[aria-current="true"]{width:42px;background:var(--brass-light)}.project-carousel-controls>small{justify-self:end;color:rgba(255,255,255,.38);font:7px/1.5 var(--mono);letter-spacing:.06em}.featured-details{border-color:rgba(255,255,255,.17)}.featured-details>div{border-color:rgba(255,255,255,.14)}

.project-slide img{user-select:none;-webkit-user-drag:none}
.project-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:rgba(255,255,255,.58)}.project-meta span+span{padding-left:18px;border-left:1px solid rgba(255,255,255,.2)}.project-carousel-topline{justify-content:flex-end}.project-slide figcaption{align-items:flex-start;flex-direction:column;gap:7px}.project-slide figcaption span{color:var(--brass-light);font:500 8px/1.4 var(--mono);letter-spacing:.09em}.project-slide figcaption small{max-width:1050px;color:rgba(255,255,255,.62);font:13px/1.6 var(--sans);letter-spacing:0;text-align:left}
.featured-learning-case{border-bottom:1px solid #d7d4ca;background:radial-gradient(circle at 84% 13%,rgba(98,87,232,.13),transparent 30%),radial-gradient(circle at 14% 78%,rgba(55,191,167,.1),transparent 28%),var(--paper)!important}.featured-learning-case .project-meta{color:#586170}.featured-learning-case .project-meta span+span{border-color:rgba(16,32,47,.18)}.featured-learning-case .featured-summary>p{color:#5c6570}.featured-learning-case .case-impact{border-color:rgba(16,32,47,.18);color:#4e5863}.featured-learning-case .learning-impact{align-items:flex-start;flex-direction:column;gap:10px}.featured-learning-case .learning-impact span{color:#5b51d7;font-size:clamp(24px,2.8vw,42px);letter-spacing:-.045em}.featured-learning-case .featured-details{border-color:#d5d1c7}.featured-learning-case .featured-details>div{border-color:#d5d1c7}.featured-learning-case .featured-details p{color:#5c6570}.featured-learning-case .learning-carousel{border-color:rgba(98,87,232,.25);background:radial-gradient(circle at 82% 10%,rgba(98,87,232,.18),transparent 36%),#10111b;box-shadow:0 38px 110px rgba(31,29,67,.22)}.featured-learning-case .carousel-dots button[aria-current="true"]{background:#6e62ed}.featured-learning-case .project-slide{background:#161725}.featured-learning-case .project-slide figcaption span{color:#9c94ff}.featured-learning-case .project-slide figcaption small{color:rgba(255,255,255,.68)}
.featured-field-case{border-bottom:1px solid rgba(92,128,141,.26);background:radial-gradient(circle at 84% 12%,rgba(52,120,246,.16),transparent 31%),radial-gradient(circle at 14% 80%,rgba(255,113,61,.12),transparent 29%),#0b1317!important}.featured-field-case .project-meta{color:rgba(207,221,226,.64)}.featured-field-case .project-meta span+span{border-color:rgba(207,221,226,.22)}.featured-field-case .featured-summary>p{color:rgba(222,231,234,.65)}.featured-field-case .case-impact{border-color:rgba(207,221,226,.19);color:rgba(222,231,234,.77)}.featured-field-case .field-impact span{color:#ff8a52}.featured-field-case .featured-details{border-color:rgba(207,221,226,.18)}.featured-field-case .featured-details>div{border-color:rgba(207,221,226,.15)}.featured-field-case .field-carousel{border-color:rgba(92,128,141,.35);background:radial-gradient(circle at 82% 8%,rgba(52,120,246,.14),transparent 35%),#101b21;box-shadow:0 38px 110px rgba(3,10,14,.5)}.featured-field-case .carousel-dots button[aria-current="true"]{background:#ff713d}.featured-field-case .project-slide{background:#14242d}.featured-field-case .project-slide figcaption span{color:#ff8a52}.featured-field-case .project-slide figcaption small{color:rgba(226,235,238,.68)}
.featured-consumer-case{border-bottom:1px solid #d8d1c6;background:radial-gradient(circle at 85% 12%,rgba(8,83,35,.12),transparent 31%),radial-gradient(circle at 14% 82%,rgba(201,102,68,.13),transparent 29%),#f6f2eb!important}.featured-consumer-case .project-meta{color:#657066}.featured-consumer-case .project-meta span+span{border-color:rgba(19,71,39,.2)}.featured-consumer-case .featured-summary>p{color:#5f665f}.featured-consumer-case .case-impact{border-color:rgba(19,71,39,.2);color:#4c574f}.featured-consumer-case .consumer-impact{align-items:flex-start;flex-direction:column;gap:10px}.featured-consumer-case .consumer-impact span{color:#075a2a;font-size:clamp(38px,4vw,64px)}.featured-consumer-case .featured-details{border-color:#d5cec3}.featured-consumer-case .featured-details>div{border-color:#d5cec3}.featured-consumer-case .featured-details p{color:#5f665f}.featured-consumer-case .consumer-carousel{border-color:rgba(7,90,42,.28);background:radial-gradient(circle at 82% 8%,rgba(201,102,68,.16),transparent 35%),#102b1d;box-shadow:0 38px 110px rgba(28,54,37,.24)}.featured-consumer-case .carousel-dots button[aria-current="true"]{background:#c96644}.featured-consumer-case .project-slide{background:#173824}.featured-consumer-case .project-slide figcaption span{color:#dc8a6d}.featured-consumer-case .project-slide figcaption small{color:rgba(244,239,230,.72)}
@media(max-width:760px){.project-meta{gap:7px 12px;line-height:1.6}.project-meta span+span{padding-left:12px}.project-slide figcaption small{font-size:12px;line-height:1.55}}

/* Proof */
.proof{background:radial-gradient(circle at 15% 20%,rgba(76,122,107,.11),transparent 34%),var(--black)}.proof-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(570px,1.15fr);gap:100px}.proof-layout>div:first-child{position:sticky;top:130px;align-self:start}.proof h2{margin:20px 0 0;font-size:clamp(55px,6.2vw,100px);font-weight:800;line-height:.92;letter-spacing:-.075em}.proof-list{border-top:1px solid rgba(255,255,255,.18)}.proof-list article{display:grid;grid-template-columns:70px 1fr;gap:25px;padding:34px 5px;border-bottom:1px solid rgba(255,255,255,.14)}.proof-list span{color:var(--brass-light);font:9px var(--mono)}.proof-list h3{margin:0 0 12px;font-size:29px;line-height:1;letter-spacing:-.05em}.proof-list p{max-width:600px;margin:0;color:rgba(255,255,255,.58);line-height:1.65}

/* Closing */
.closing{position:relative;padding:145px 0;overflow:hidden;background:linear-gradient(135deg,#f4f4f1,#efeee9 62%,#e7e1da);color:var(--text)}.closing-orbit{position:absolute;right:-9%;top:-68%;width:780px;height:780px;border:1px solid rgba(169,113,66,.22);border-radius:50%}.closing-orbit:before,.closing-orbit:after{content:"";position:absolute;border:1px solid rgba(16,16,16,.08);border-radius:50%}.closing-orbit:before{inset:90px}.closing-orbit:after{inset:190px;background:radial-gradient(circle,rgba(169,113,66,.15),transparent 68%)}.closing-layout{position:relative;display:grid;grid-template-columns:1fr auto;align-items:end;gap:100px}.closing h2{max-width:1100px;margin:20px 0 0;font-size:clamp(65px,8vw,128px);font-weight:800;line-height:.86;letter-spacing:-.082em}.closing-layout>div:first-child>p:not(.eyebrow){max-width:690px;color:var(--muted);font-size:18px}.closing-action{display:flex;min-width:330px;flex-direction:column;align-items:flex-start}.pill-button{display:inline-flex;align-items:center;gap:18px;padding:8px 8px 8px 22px;border:1px solid #161616;border-radius:999px;background:#111;color:#fff;font-size:14px;font-weight:700;text-decoration:none;box-shadow:0 16px 35px rgba(0,0,0,.14);transition:transform .25s,background .25s,border-color .25s}.pill-button span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--brass);color:#fff;font-size:18px;transition:transform .3s,background .25s,color .25s}.pill-button:hover{transform:translateY(-4px);border-color:var(--brass);background:var(--brass)}.pill-button:hover span{transform:rotate(45deg);background:#fff;color:#111}.closing-action small{max-width:350px;margin-top:20px;color:#777;font:9px/1.65 var(--mono);letter-spacing:.05em}

/* Footer */
.footer{position:relative;padding:0;background:#070707;color:#fff;border-top:1px solid rgba(255,255,255,.11)}.footer-grid{display:grid;grid-template-columns:minmax(320px,2.15fr) repeat(3,minmax(150px,.75fr));gap:clamp(38px,5vw,90px);padding:82px 0 74px}.footer-brand{padding-right:40px}.footer-logo{display:block;width:158px;margin-bottom:22px}.footer-logo img{display:block;width:100%;height:auto}.footer-brand p{max-width:430px;margin:0;color:rgba(255,255,255,.62);font-size:19px;line-height:1.5}.footer-brand>span{display:block;margin-top:22px;color:#777;font:9px var(--mono);letter-spacing:.09em}.footer-group{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.footer-group small{margin-bottom:8px;color:#777;font:9px var(--mono);letter-spacing:.1em}.footer-group>a:not(.social-button){color:rgba(255,255,255,.67);font-size:14px;text-decoration:none;transition:color .2s}.footer-group>a:hover{color:#fff}.social-links{display:flex;gap:9px}.social-button{position:relative;display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#fff;text-decoration:none;transition:transform .25s}.social-button:hover{transform:translateY(-3px)}.social-button img{position:relative;z-index:2;width:21px;height:21px}.linkedin-fallback,.google-fallback{position:absolute;z-index:1;display:grid;place-items:center;font-family:Arial,sans-serif;font-weight:700}.linkedin-fallback[hidden],.google-fallback[hidden]{display:none}.linkedin-fallback{width:21px;height:21px;border-radius:3px;background:#0a66c2;color:#fff;font-size:14px}.google-fallback{font-size:21px;background:conic-gradient(from -45deg,#4285f4 0 25%,#34a853 0 42%,#fbbc05 0 64%,#ea4335 0 78%,#4285f4 0);background-clip:text;-webkit-background-clip:text;color:transparent}.copyright{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0 26px;border-top:1px solid rgba(255,255,255,.12);color:#777;font:9px var(--mono);letter-spacing:.06em}

@keyframes navGlow{from{right:-32%}to{right:120%}}@keyframes heroUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes auraDrift{to{transform:translate(-8%,6%) rotate(14deg)}}

@media(max-width:1100px){.hero-copy h1{font-size:clamp(68px,10.4vw,120px)}.hero-gallery{height:510px}.case-heading{gap:50px}.proof-layout{gap:60px}.closing-layout{gap:55px}.footer-grid{grid-template-columns:1.6fr repeat(3,1fr)}}
@media(max-width:900px){.hero-bottom,.case-heading,.proof-layout,.closing-layout{grid-template-columns:1fr}.round-link{justify-self:start}.hero-gallery{height:440px}.hero-card-a{left:8%;width:84%}.hero-card-b{left:-16%;width:56%}.hero-card-c{right:-16%;width:56%}.intro-grid{grid-template-columns:1fr;gap:25px}.capability-line{grid-template-columns:1fr 1fr}.capability-line span:nth-child(2){border-right:0}.capability-line span:nth-child(-n+2){border-bottom:1px solid var(--line)}.case-heading{align-items:start;gap:25px}.case-heading>p{max-width:700px}.case-details{grid-template-columns:1fr}.case-details>div{min-height:0;padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}.dark-section .case-details>div{border-color:rgba(255,255,255,.14)}.case-details>div:last-child{border-bottom:0}.featured-summary{max-width:720px}.case-impact{max-width:540px}.project-carousel-controls{grid-template-columns:auto 1fr}.project-carousel-controls>small{grid-column:1/-1;justify-self:start}.proof-layout{gap:60px}.proof-layout>div:first-child{position:relative;top:auto}.closing-layout{align-items:start;gap:42px}.closing-action{min-width:0}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-brand{grid-column:1/-1;padding-right:0}}
@media(max-width:760px){.shell{width:calc(100% - 40px)}.site-header{inset:10px 0 auto}.nav{width:calc(100% - 40px);height:56px;padding:0 15px 0 21px;border-color:rgba(255,255,255,.28);background:rgba(10,10,10,.75)}.brand-logo{width:78px;height:38px}.desktop-nav{display:none}.menu-toggle{display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid rgba(255,255,255,.68);border-radius:50%;background:rgba(255,255,255,.12);box-shadow:0 0 0 3px rgba(255,255,255,.05),0 6px 18px rgba(0,0,0,.32)}.menu-toggle span:not(.sr-only){display:block;width:17px;height:1px;margin:3px;background:#fff;transition:transform .25s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}.nav:before{right:-42%;width:38%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.05) 25%,rgba(169,113,66,.36) 50%,rgba(255,255,255,.11) 73%,transparent);animation-duration:5.8s}.dark-section,.light-section{padding:84px 0}.portfolio-hero{min-height:auto;padding-top:125px}.hero-copy h1{margin:18px 0 25px;font-size:clamp(54px,16.8vw,78px);line-height:.88}.hero-bottom{gap:30px}.hero-bottom>p{font-size:16px}.hero-gallery{width:calc(100% - 20px);height:330px;margin-top:40px}.hero-card{border-radius:13px}.hero-card-a{left:2%;width:96%;height:82%}.hero-card-b{left:-27%;top:20%;width:65%;height:62%}.hero-card-c{right:-27%;top:22%;width:65%;height:60%}.hero-index{align-items:flex-start;flex-direction:column;gap:9px;padding:18px 0 23px}.intro-grid h2{font-size:clamp(46px,13vw,64px)}.intro-grid>div>p{margin-top:25px;font-size:16px}.capability-line{margin-top:55px}.capability-line span{padding:18px 14px;font-size:8px}.capability-line span:nth-child(odd){padding-left:0}.case-study{padding-bottom:77px}.case-heading{margin-bottom:38px}.case-heading h2{font-size:clamp(45px,12.7vw,62px)}.case-heading>p{font-size:16px}.featured-summary>p{font-size:16px}.case-impact{align-items:flex-start;flex-direction:column;gap:10px;margin-top:22px;padding-top:20px}.case-impact span{font-size:52px}.project-carousel{width:calc(100% - 20px);padding:9px;border-radius:18px}.project-carousel-topline{padding:5px 4px 13px}.project-carousel-topline span:first-child{max-width:72%;font-size:6px}.project-carousel-track{gap:8px}.project-slide{flex-basis:94%;border-radius:11px}.project-slide img{min-height:210px}.project-slide figcaption{align-items:flex-start;flex-direction:column;gap:5px;padding:13px}.project-slide figcaption small{text-align:left}.project-carousel-controls{gap:15px;padding:14px 4px 5px}.carousel-arrows button{width:36px;height:36px}.carousel-dots button{width:15px}.carousel-dots button[aria-current="true"]{width:30px}.project-carousel-controls>small{font-size:6px}.case-visual{width:calc(100% - 24px);padding:9px;border-radius:17px}.case-visual img{min-height:245px;border-radius:11px;object-fit:cover}.case-visual small{margin:11px 5px 3px;font-size:6px}.case-details{margin-top:34px}.case-details p{font-size:15px}.proof h2{font-size:clamp(47px,13vw,64px)}.proof-list article{grid-template-columns:45px 1fr;gap:15px;padding:27px 3px}.proof-list h3{font-size:24px}.proof-list p{font-size:14px}.closing{padding:86px 0 95px}.closing h2{font-size:clamp(56px,15.5vw,76px)}.closing-layout>div:first-child>p:not(.eyebrow){font-size:16px}.closing-action small{font-size:8px}.footer-grid{grid-template-columns:1fr 1fr;gap:42px 24px;padding:65px 0 54px}.footer-brand{margin-bottom:4px}.footer-logo{width:142px}.footer-brand p{font-size:17px}.footer-group:last-child{grid-column:1/-1}.copyright{align-items:flex-start;flex-direction:column;padding:20px 0 24px;line-height:1.5}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.nav:before{display:none}}

/* Hero simplificado: el contenido respira sin la galería de proyectos. */
.portfolio-hero{padding-bottom:110px}
@media(max-width:760px){.portfolio-hero{padding-bottom:80px}}

/* Alternancia cromática del portafolio: oscuro → claro, sin empalmes. */
.featured-credit-case{border-bottom:1px solid #ced7d1;background:radial-gradient(circle at 82% 16%,rgba(76,122,107,.15),transparent 32%),radial-gradient(circle at 16% 78%,rgba(169,113,66,.12),transparent 30%),#f0f2ee!important;color:#102019}
.featured-credit-case .project-meta{color:#647269}
.featured-credit-case .project-meta span+span{border-color:rgba(16,32,25,.18)}
.featured-credit-case .featured-summary>p{color:#5b675f}
.featured-credit-case .case-impact{border-color:rgba(16,32,25,.18);color:#4d5b52}
.featured-credit-case .case-impact span{color:#316b59}
.featured-credit-case .featured-details,.featured-credit-case .featured-details>div{border-color:#cdd5d0}
.featured-credit-case .featured-details p{color:#5b675f}

.featured-learning-case{border-bottom:1px solid rgba(157,148,255,.2);background:radial-gradient(circle at 84% 13%,rgba(98,87,232,.21),transparent 31%),radial-gradient(circle at 14% 78%,rgba(55,191,167,.12),transparent 29%),#0f1018!important;color:#fff}
.featured-learning-case .project-meta{color:rgba(224,222,248,.61)}
.featured-learning-case .project-meta span+span{border-color:rgba(224,222,248,.2)}
.featured-learning-case .featured-summary>p{color:rgba(236,235,249,.66)}
.featured-learning-case .case-impact{border-color:rgba(224,222,248,.19);color:rgba(236,235,249,.76)}
.featured-learning-case .learning-impact span{color:#9c94ff}
.featured-learning-case .featured-details,.featured-learning-case .featured-details>div{border-color:rgba(224,222,248,.17)}
.featured-learning-case .featured-details p{color:rgba(236,235,249,.64)}

.featured-field-case{border-bottom:1px solid #ccd8dc;background:radial-gradient(circle at 84% 12%,rgba(52,120,246,.12),transparent 31%),radial-gradient(circle at 14% 80%,rgba(255,113,61,.11),transparent 29%),#edf2f3!important;color:#111d22}
.featured-field-case .project-meta{color:#60717a}
.featured-field-case .project-meta span+span{border-color:rgba(17,29,34,.18)}
.featured-field-case .featured-summary>p{color:#5b6970}
.featured-field-case .case-impact{border-color:rgba(17,29,34,.18);color:#4d5e66}
.featured-field-case .field-impact span{color:#d55e31}
.featured-field-case .featured-details,.featured-field-case .featured-details>div{border-color:#ccd8dc}
.featured-field-case .featured-details p{color:#5b6970}

.featured-consumer-case{border-bottom:1px solid rgba(112,201,143,.18);background:radial-gradient(circle at 85% 12%,rgba(25,128,65,.2),transparent 31%),radial-gradient(circle at 14% 82%,rgba(201,102,68,.15),transparent 29%),#081a11!important;color:#fff}
.featured-consumer-case .project-meta{color:rgba(225,240,230,.62)}
.featured-consumer-case .project-meta span+span{border-color:rgba(225,240,230,.2)}
.featured-consumer-case .featured-summary>p{color:rgba(235,244,238,.66)}
.featured-consumer-case .case-impact{border-color:rgba(225,240,230,.19);color:rgba(235,244,238,.76)}
.featured-consumer-case .consumer-impact span{color:#70c98f}
.featured-consumer-case .featured-details,.featured-consumer-case .featured-details>div{border-color:rgba(225,240,230,.17)}
.featured-consumer-case .featured-details p{color:rgba(235,244,238,.64)}

/* Prueba de navegación reforzada — proyecto de servicios financieros. */
.enhanced-carousel{--enhanced-accent:#39745f;--enhanced-accent-soft:#78b89f;--enhanced-ring:rgba(114,198,165,.52);--enhanced-button-bg:rgba(8,15,14,.78);isolation:isolate}
.enhanced-learning-carousel{--enhanced-accent:#6e62ed;--enhanced-accent-soft:#aaa3ff;--enhanced-ring:rgba(156,148,255,.58);--enhanced-button-bg:rgba(22,20,50,.82)}
.enhanced-field-carousel{--enhanced-accent:#e56635;--enhanced-accent-soft:#ffab7d;--enhanced-ring:rgba(255,138,82,.58);--enhanced-button-bg:rgba(12,39,49,.84)}
.enhanced-consumer-carousel{--enhanced-accent:#c96644;--enhanced-accent-soft:#e3a189;--enhanced-ring:rgba(220,138,109,.58);--enhanced-button-bg:rgba(10,48,27,.84)}
.enhanced-carousel .project-carousel-topline{justify-content:space-between;padding:4px 5px 20px}
.enhanced-view-label{display:flex;align-items:center;gap:13px;color:#fff}
.enhanced-view-label strong{font:600 10px/1.4 var(--mono);letter-spacing:.1em}
.enhanced-view-label small{padding-left:13px;border-left:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.48);font:500 8px/1.4 var(--mono);letter-spacing:.05em}
.carousel-edge-button{position:absolute;z-index:5;top:43%;display:grid;place-items:center;width:66px;height:66px;padding:0;overflow:visible;border:1px solid rgba(255,255,255,.52);border-radius:50%;background:var(--enhanced-button-bg);color:#fff;box-shadow:0 16px 45px rgba(0,0,0,.35),0 0 0 7px rgba(255,255,255,.07);backdrop-filter:blur(14px);cursor:pointer;transition:transform .25s,background .25s,box-shadow .25s}
.carousel-edge-button:before{content:"";position:absolute;z-index:-1;inset:-8px;border:1px solid var(--enhanced-ring);border-radius:50%;opacity:0;transform:scale(.86);pointer-events:none}
.carousel-edge-button:after{content:"";position:absolute;inset:2px;overflow:hidden;border-radius:50%;background:linear-gradient(115deg,transparent 24%,rgba(255,255,255,.32) 47%,transparent 69%);opacity:0;transform:translateX(-120%);pointer-events:none}
.carousel-edge-button span{position:relative;z-index:1;font-size:27px;line-height:1;transition:transform .25s}
.carousel-edge-prev{left:35px}
.carousel-edge-next{right:35px}
.carousel-edge-next:before{animation:edgePulse 2.8s cubic-bezier(.22,1,.36,1) infinite}
.carousel-edge-next span{animation:edgeHint 3.4s ease-in-out infinite}
.carousel-edge-button:hover{transform:scale(1.08);background:#fff;color:#101615;box-shadow:0 20px 55px rgba(0,0,0,.42),0 0 0 10px rgba(255,255,255,.1)}
.carousel-edge-button:hover:after{opacity:1;animation:edgeSheen .65s ease-out both}
.carousel-edge-button:hover:before{animation:none;opacity:.7;transform:scale(1)}
.carousel-edge-prev:hover span{transform:translateX(-3px)}
.carousel-edge-next:hover span{transform:translateX(3px)}
.enhanced-carousel .project-carousel-controls{grid-template-columns:minmax(0,1fr) auto;gap:28px;padding-top:22px}
.enhanced-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid rgba(255,255,255,.17);border-radius:14px;overflow:hidden}
.enhanced-carousel .enhanced-tabs button{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:10px;width:auto;height:52px;padding:0 16px;overflow:hidden;border:0;border-right:1px solid rgba(255,255,255,.13);border-radius:0;background:rgba(255,255,255,.025);color:rgba(255,255,255,.5);font:600 10px/1.25 var(--sans);text-align:left;cursor:pointer;transition:background .25s,color .25s}
.enhanced-carousel .enhanced-tabs button:last-child{border-right:0}
.enhanced-carousel .enhanced-tabs button span{color:rgba(255,255,255,.34);font:500 8px var(--mono);letter-spacing:.06em}
.enhanced-carousel .enhanced-tabs button:hover{background:rgba(255,255,255,.08);color:#fff}
.enhanced-carousel .enhanced-tabs button[aria-current="true"]{width:auto;background:#fff;color:#101615}
.enhanced-carousel .enhanced-tabs button[aria-current="true"] span{color:var(--enhanced-accent)}
.enhanced-carousel .enhanced-tabs button[aria-current="true"]:after{content:"";position:absolute;right:0;bottom:0;left:0;height:3px;background:linear-gradient(90deg,var(--enhanced-accent),var(--enhanced-accent-soft),var(--enhanced-accent));transform-origin:left;animation:tabTrace .5s cubic-bezier(.22,1,.36,1) both}
@keyframes edgePulse{0%,58%,100%{opacity:0;transform:scale(.86)}72%{opacity:.68}92%{opacity:0;transform:scale(1.27)}}
@keyframes edgeHint{0%,62%,100%{transform:translateX(0)}72%{transform:translateX(4px)}80%{transform:translateX(0)}88%{transform:translateX(3px)}}
@keyframes edgeSheen{from{transform:translateX(-120%)}to{transform:translateX(120%)}}
@keyframes tabTrace{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:760px){.enhanced-carousel .project-carousel-topline{align-items:flex-start}.enhanced-view-label{align-items:flex-start;flex-direction:column;gap:3px}.enhanced-view-label small{padding-left:0;border-left:0}.carousel-edge-button{top:39%;width:48px;height:48px;box-shadow:0 12px 30px rgba(0,0,0,.35),0 0 0 4px rgba(255,255,255,.07)}.carousel-edge-button span{font-size:21px}.carousel-edge-prev{left:18px}.carousel-edge-next{right:18px}.enhanced-carousel .project-carousel-controls{grid-template-columns:1fr;gap:12px}.enhanced-carousel .project-carousel-controls>small{grid-column:auto}.enhanced-carousel .enhanced-tabs button{min-height:57px;height:auto;padding:9px 8px;align-items:flex-start;flex-direction:column;gap:4px;font-size:9px}}
