@charset "UTF-8";

.casa-menu-card{display:grid;grid-template-columns:280px minmax(0,1fr);gap:64px;align-items:center;border-top:1px solid #ffffff29;padding-top:48px;margin-top:52px;scroll-margin-top:145px}
.casa-menu-sheet{width:280px;height:398px;position:relative;overflow:hidden;background:#090a07;border:1px solid #d4ac5655;box-shadow:0 16px 48px #0003}
.casa-menu-sheet iframe{display:block;width:910px;height:1292px;max-width:none;transform:scale(.307692);transform-origin:top left;border:0;pointer-events:none}
.casa-menu-sheet>.casa-menu-open{position:absolute;inset:0;width:100%;height:100%;display:flex;align-items:flex-end;padding:0;cursor:zoom-in;background:transparent;border:0}
.casa-menu-sheet>.casa-menu-open>span{display:flex;justify-content:space-between;align-items:center;width:100%;padding:13px 17px;background:#090a07eb;color:#f3d18f;font-size:11px;font-family:var(--sans)}
.casa-menu-sheet b{font-size:18px;font-weight:400}
.casa-menu-copy{max-width:470px}
.casa-menu-copy .small-label{color:#bfc6d0}
.casa-menu-copy h4{font-size:clamp(32px,4vw,51px);line-height:1.04;letter-spacing:-.05em;margin:20px 0;color:var(--cream);font-weight:400}
.casa-menu-copy h4 em{font-family:var(--serif);color:var(--accent);font-weight:400}
.casa-menu-copy p{font-size:14px;line-height:1.8;color:#bfc6d0;margin:0 0 23px;max-width:410px}
.casa-menu-copy .text-link{background:none;border:0;border-bottom:1px solid currentColor;padding:0 0 8px;font-family:inherit;cursor:pointer;display:flex;width:fit-content;font-size:12px;margin-bottom:28px}
.casa-menu-copy .button{background:var(--accent);color:var(--navy);font-size:12px}
.casa-menu-dialog{width:min(980px,calc(100vw - 40px));height:min(92svh,1100px);max-width:none;max-height:none;padding:0;border:1px solid #455061;background:var(--navy);color:var(--cream);margin:auto}
.casa-menu-dialog[open]{display:flex;flex-direction:column}
.casa-menu-dialog::backdrop{background:#07101bdd;backdrop-filter:blur(5px)}
.casa-menu-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 20px;flex-shrink:0}
.casa-menu-dialog-head h2{font-size:19px;font-weight:400;letter-spacing:-.03em;margin:0}
.casa-menu-close{background:none;border:1px solid #ffffff50;color:white;cursor:pointer;min-width:42px;min-height:42px;font-size:20px}
.casa-menu-dialog>iframe{width:100%;min-height:0;flex:1;border:0;background:#090a07}
.casa-menu-dialog>a{font-size:11px;padding:13px 20px;flex-shrink:0;text-align:right;color:var(--cream)}
@media(max-width:640px){.casa-menu-card{grid-template-columns:1fr;gap:27px;margin-top:35px;padding-top:32px;scroll-margin-top:116px}.casa-menu-sheet{margin:auto}.casa-menu-copy h4{font-size:36px;margin:15px 0}.casa-menu-copy p{font-size:12px}.casa-menu-dialog{width:100vw;height:100svh;border:0}.casa-menu-dialog-head{padding:10px 14px}.casa-menu-dialog-head h2{font-size:17px}}
:root{--navy:#101f35;--deep:#0d192b;--cream:#f5f3ed;--paper:#fffef9;--muted:#737170;--line:#d8d4cc;--accent:#ef6859;--blue:#b83d36;--accent-deep:#b83d36;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--wrap:1392px}
.brand-wordmark{display:block;font-size:24px;font-weight:700;letter-spacing:-.065em;line-height:1}.brand-wordmark>span{display:block;font-size:7px;font-weight:500;letter-spacing:.28em;margin-top:7px}.contact-logo{width:146px;height:146px;object-fit:contain;mix-blend-mode:multiply;margin:-26px 0 -25px -17px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--navy);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;line-height:1.02;letter-spacing:-.06em}em{font-family:var(--serif);font-weight:400;letter-spacing:-.06em}button{border:0;background:none}::selection{background:var(--accent);color:var(--navy)}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.model-section :focus-visible,.hero :focus-visible{outline-color:var(--accent)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;background:var(--accent);color:var(--navy);z-index:2000;padding:14px 24px}.skip-link:focus{top:10px}.section-wrap{max-width:var(--wrap);margin:auto;padding-left:64px;padding-right:64px}.eyebrow,.small-label,.section-kicker,.project-label,.project-caption,.hero-coordinate,.render-label,.model-footnote,.contact-top,.site-footer,.browser-bar,.hero-bottom,.hero-location{font-size:11px;letter-spacing:.11em;line-height:1.5}.eyebrow,.small-label,.section-kicker,.project-label,.hero-coordinate,.render-label,.model-footnote{text-transform:uppercase}.section-index{display:block;font-size:11px;letter-spacing:.14em;margin-bottom:27px}.text-link{display:inline-flex;align-items:center;gap:28px;font-size:13px;font-weight:600;padding:9px 0;border-bottom:1px solid currentColor;transition:gap .25s}.text-link:hover{gap:40px}.text-link>span[aria-hidden]{font-size:19px;font-weight:400}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:17px 23px;font-size:13px;font-weight:600;min-height:54px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-3px)}.button>span[aria-hidden]{font-size:25px;font-weight:400;line-height:1}.button-lime{background:var(--accent);color:var(--navy)}.button-lime:hover{background:#ff8375}.button-navy{background:var(--navy);color:white}.button-navy:hover{background:var(--blue)}
/* Quiet navigation; the work is the focal point. */
.site-header{height:88px;padding:0 4.5%;display:flex;align-items:center;gap:32px;position:sticky;top:0;background:rgba(245,243,237,.96);backdrop-filter:blur(16px);z-index:100;border-bottom:1px solid rgba(16,31,53,.12)}.brand{display:flex;align-items:center;margin-right:auto;flex-shrink:0}.brand img{width:168px;height:66px;object-fit:contain;mix-blend-mode:multiply}.desktop-nav{display:flex;gap:35px;align-items:center}.desktop-nav a{font-size:12px;position:relative;padding:10px 0}.desktop-nav a:after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav a:hover:after,.desktop-nav a.active:after{transform:scaleX(1)}.header-contact{font-size:12px;border:1px solid #bac0bb;border-radius:30px;display:flex;align-items:center;gap:26px;padding:11px 20px;margin-left:35px;transition:background .2s,border .2s}.header-contact span{font-size:21px;line-height:1}.header-contact:hover{background:var(--accent);border-color:var(--accent)}.menu-toggle{display:none}.mobile-nav{display:none}
/* The first composition combines three actual pieces, without changing them. */
.hero{background:var(--navy);color:var(--cream);min-height:740px;height:calc(100svh - 88px);max-height:1010px;position:relative;overflow:hidden;padding:36px 4.5% 25px;display:flex;flex-direction:column}.hero-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(90deg,transparent calc(25% - 1px),rgba(222,233,236,.045) 25%,transparent calc(25% + 1px),transparent calc(50% - 1px),rgba(222,233,236,.045) 50%,transparent calc(50% + 1px),transparent calc(75% - 1px),rgba(222,233,236,.045) 75%,transparent calc(75% + 1px))}.hero-top{display:flex;justify-content:space-between;position:relative;z-index:2}.hero-top .eyebrow{font-size:10px;letter-spacing:.14em;display:flex;align-items:center;gap:12px}.status-dot{height:6px;width:6px;display:inline-block;background:var(--accent);border-radius:50%;box-shadow:0 0 0 4px rgba(239,104,89,.08)}.hero-location{font-size:10px;color:#bbc7ca;display:flex;gap:26px}.hero-location span{color:var(--accent);font-size:15px;line-height:1}.hero-copy{position:relative;z-index:3;width:55%;margin:auto 0;padding:44px 0 105px;pointer-events:none}.hero-copy>*{pointer-events:auto}.hero h1{font-size:clamp(72px,7.5vw,118px);letter-spacing:-.073em;line-height:.98;max-width:760px}.hero h1 em{color:var(--accent)}.hero-copy p{font-size:15px;color:#bdc7cb;max-width:305px;line-height:1.75;margin:32px 0}.hero-copy .button{margin-top:2px}.hero-art{position:absolute;right:0;top:18%;width:49%;height:71%;z-index:1}.hero-orbit{position:absolute;inset:10% -5% 3% 12%;border:1px solid rgba(239,104,89,.3);border-radius:50%;transform:rotate(-22deg)}.hero-orbit:after{content:'';position:absolute;inset:12%;border:1px solid rgba(239,104,89,.09);border-radius:50%}.hero-architecture{position:absolute;top:0;right:3%;width:91%;transform:rotate(-7deg);box-shadow:0 18px 80px rgba(0,0,0,.3);background:#cccac5;transition:transform .6s}.hero-architecture>img{aspect-ratio:1.52;object-fit:cover}.hero-architecture>span{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;font-size:9px;letter-spacing:.12em;color:var(--navy);background:#e8e6de}.hero-architecture>span>span{font-size:18px}.hero-architecture:hover{transform:rotate(-4deg) translateY(-6px)}.hero-polo{position:absolute;width:38%;left:-1%;bottom:2%;transform:rotate(8deg);box-shadow:0 20px 50px rgba(0,0,0,.35);background:#e0ddd3;transition:transform .6s}.hero-polo img{aspect-ratio:.9;object-fit:cover}.hero-polo>span{font-family:var(--serif);font-style:italic;display:block;text-align:center;color:var(--navy);padding:9px 2px 12px;font-size:14px;letter-spacing:-.03em}.hero-polo:hover{transform:rotate(3deg) translateY(-7px)}.hero-stamp{position:absolute;width:26%;bottom:2%;right:10%;padding:10px;transform:rotate(-8deg);background:var(--cream);box-shadow:0 10px 30px rgba(0,0,0,.18);transition:transform .6s}.hero-stamp img{aspect-ratio:.94;object-fit:contain}.hero-stamp:hover{transform:rotate(0deg) translateY(-8px)}.hero-mark{font-family:Georgia,serif;color:var(--accent);font-size:110px;position:absolute;left:2%;top:1%;line-height:1;z-index:3;animation:turn 40s linear infinite}.hero-coordinate{position:absolute;bottom:-5%;right:5%;font-size:9px;letter-spacing:.18em;color:#a5b6bd}.hero-bottom{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;color:#91a0aa;font-size:9px;border-top:1px solid #334155;padding-top:20px}.hero-bottom>a{color:var(--cream);display:flex;gap:30px;align-items:center}.hero-bottom>a>span{font-size:21px;color:var(--accent)}@keyframes turn{to{transform:rotate(360deg)}}
/* An index with space to breathe. */
.intro{padding-top:100px;padding-bottom:100px}.section-kicker{display:flex;align-items:center;gap:15px;letter-spacing:.1em;font-size:10px}.mini-cross{color:var(--blue);font-size:28px}.intro-main{display:grid;grid-template-columns:1.15fr 1fr;gap:100px;margin-top:45px;align-items:end}.intro h2{font-size:clamp(42px,4.7vw,68px);line-height:1.05}.intro h2 em{color:var(--accent-deep)}.intro-note{max-width:375px;padding-bottom:7px}.intro-note p{font-size:14px;color:#6d6f70;line-height:1.8;margin-bottom:17px}.intro-note .text-link{margin-top:15px}.discipline-links{display:grid;grid-template-columns:repeat(4,1fr);margin-top:70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.discipline-links a{position:relative;padding:25px 25px 27px 0;border-right:1px solid var(--line);transition:background .25s}.discipline-links a:not(:first-child){padding-left:25px}.discipline-links a:last-child{border-right:0}.discipline-links a>span{display:block;font-size:9px;letter-spacing:.1em;color:#74716d;margin-bottom:15px}.discipline-links strong{font-size:16px;font-weight:500;letter-spacing:-.025em}.discipline-links b{position:absolute;right:18px;top:23px;font-weight:400;font-size:20px;transition:transform .2s}.discipline-links a:hover b{transform:translate(3px,-3px)}.discipline-links a:hover{background:rgba(239,104,89,.12)}
.section-heading{display:grid;grid-template-columns:1.35fr 1fr;gap:100px;align-items:end;margin-bottom:68px}.section-heading h2{font-size:clamp(52px,5.3vw,80px);line-height:1.02}.section-heading>p,.section-heading>div>p{font-size:14px;line-height:1.8;color:#716e6b;max-width:340px;margin-bottom:4px}.section-heading>div>.text-link{margin-top:21px}.section-heading em{color:var(--accent-deep)}.web-section{padding:100px 0;background:#fffefa}.web-section .section-heading{margin-bottom:78px}.project-label{display:flex;align-items:center;gap:12px;font-size:10px;margin-bottom:30px;letter-spacing:.12em}.project-label .dot{width:5px;height:5px;background:var(--blue);border-radius:50%;flex-shrink:0}.label-line{height:1px;background:var(--line);flex:1;margin-left:18px}.work-layout{display:grid;grid-template-columns:1fr 1.65fr;background:#f1ece7;min-height:470px;align-items:center;overflow:hidden}.work-copy{padding:44px 0 42px 38px}.small-label{font-size:9px;letter-spacing:.1em;display:block;color:#746a65}.work-copy h3{font-size:45px;margin:23px 0}.work-copy h3 em{color:var(--accent-deep)}.work-copy p{font-size:13px;line-height:1.75;max-width:270px;color:#746c67}.project-tags{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0 25px}.project-tags span{font-size:9px;border:1px solid #d2c2b8;padding:4px 7px;line-height:1.5}.work-copy .button{font-size:11px;padding:13px 18px;gap:20px;min-height:47px}.project-caption{display:block;font-size:9px;margin-top:17px;color:#746c67;text-transform:none;letter-spacing:.03em}.work-image{display:block;background:white;margin:35px -40px 35px 34px;box-shadow:0 20px 50px rgba(55,31,25,.12);border:1px solid #ded4cd;transition:transform .5s}.work-image:hover{transform:translate(-4px,-4px)}.browser-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;border-bottom:1px solid #e9e3de;font-size:8px;letter-spacing:.015em;min-height:37px;color:#746e68}.browser-bar>span:first-child{display:flex;gap:4px}.browser-bar i{height:5px;width:5px;background:#d5c9c1;border-radius:50%;display:block}.browser-bar b{font-weight:400}.work-image img{width:100%;height:auto}.marketing-projects{padding-top:88px}.marketing-projects .project-label{margin-bottom:38px}.marketing-image{position:relative;display:block;overflow:hidden;background:#edece4}.marketing-image img{width:100%;height:100%;object-fit:contain;transition:transform .7s ease}.marketing-image:hover img{transform:scale(1.025)}.project-featured .marketing-image{padding:40px;background:#eee8e2}.image-open{position:absolute;bottom:18px;right:18px;width:42px;height:42px;background:var(--navy);color:#fff;display:grid;place-items:center;border-radius:50%;font-size:22px;transition:background .2s,transform .2s}.marketing-image:hover .image-open{background:var(--blue);transform:rotate(5deg)}.marketing-meta{display:grid;grid-template-columns:40px 1fr auto;gap:16px;align-items:start;padding-top:26px}.project-number{font-size:11px;padding-top:3px;color:#7c7670;font-family:var(--serif);font-style:italic}.marketing-meta h3{font-size:33px;letter-spacing:-.045em;margin:8px 0 11px}.marketing-meta p{font-size:12px;line-height:1.75;color:#716c66;max-width:500px}.marketing-meta>.text-link{margin-top:20px;white-space:nowrap;font-size:11px}.marketing-duo{display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:62px}.marketing-duo .marketing-image{aspect-ratio:1.34;display:grid;align-items:center;padding:24px;background:#e7e4db}.project-casa .marketing-image{background:#242821}.project-valenzuela .marketing-image{background:#e8e8e1}.marketing-duo .marketing-meta{grid-template-columns:28px 1fr;gap:10px}.marketing-duo .marketing-meta h3{font-size:29px}.marketing-duo .text-link{font-size:11px;margin-top:15px;gap:24px}.marketing-duo .marketing-meta p{max-width:335px}
/* Original 2D artworks are presented on material-like grounds. */
.graphic-section{padding-top:115px;padding-bottom:85px}.gallery-toolbar{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:32px;border-bottom:1px solid var(--line);padding-bottom:23px}.gallery-filters{display:flex;flex-wrap:wrap;gap:8px}.filter{border:1px solid var(--line);border-radius:30px;font-size:10px;padding:10px 15px;transition:background .2s,color .2s,border .2s;white-space:nowrap}.filter span{font-size:8px;margin-left:7px;opacity:.65}.filter:hover{border-color:var(--navy)}.filter.active{background:var(--navy);color:var(--cream);border-color:var(--navy)}.gallery-hint{font-size:9px;color:#79716b;white-space:nowrap;letter-spacing:.02em}.gallery-hint span{margin-left:5px;font-size:15px}.art-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px 22px}.art-piece{min-width:0;animation:arrive .4s both}.art-button{display:block;width:100%;padding:0;text-align:left;position:relative;overflow:hidden;background:#e9e5d9;aspect-ratio:.82}.art-button img{height:100%;width:100%;object-fit:contain;padding:24px;transition:transform .55s}.art-button:hover img{transform:scale(1.055)}.art-piece[data-collection="chiribaya"] .art-button{background:#eae6dc}.art-button.dark-art{background:#40343a}.art-piece[data-collection="toro"] .art-button{background:#e7e5de}.art-button>span{position:absolute;bottom:13px;right:13px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:white;width:29px;height:29px;font-size:16px;opacity:0;transform:translateY(6px);transition:opacity .2s,transform .2s}.art-button:hover>span,.art-button:focus-visible>span{opacity:1;transform:translateY(0)}.art-caption{display:flex;justify-content:space-between;align-items:start;gap:10px;padding-top:14px}.art-caption h3{font-size:14px;font-weight:500;line-height:1.3;letter-spacing:-.015em}.art-caption p{font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:#77716b;margin-top:6px}.art-caption>span{font-family:var(--serif);font-style:italic;font-size:11px;color:#81776e;padding-top:1px}.graphic-transition{display:flex;align-items:center;border-top:1px solid var(--line);padding-top:40px;margin-top:65px;gap:27px}.transition-arrow{font-size:50px;line-height:1;font-weight:400;color:var(--accent-deep)}.graphic-transition p{font-size:15px;line-height:1.7;color:#7a746f}.graphic-transition strong{font-weight:400;color:var(--navy)}.round-link{display:grid;place-items:center;border:1px solid #cbbfb6;width:55px;height:55px;border-radius:50%;margin-left:auto;font-size:30px;transition:background .2s}.round-link:hover{background:var(--accent)}@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
/* Renders are explicitly named as renders; controls switch real views. */
.model-section{background:var(--navy);color:var(--cream);padding:110px 0 100px}.model-section .section-heading h2 em{color:var(--accent)}.model-section .section-heading>p{color:#a3b4bc}.model-section .section-index{color:#b3c2c8}.model-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #40505f;margin-top:30px;margin-bottom:45px}.model-tabs button{display:flex;justify-content:space-between;align-items:center;color:#9daeb7;padding:22px 0 24px;text-align:left;font-size:15px;border-bottom:2px solid transparent;transition:color .2s,border .2s}.model-tabs button+button{padding-left:25px}.model-tabs button>span{font-family:var(--serif);font-style:italic;font-size:11px;margin-right:25px;color:#85939c}.model-tabs button[aria-selected=true]{color:var(--accent);border-color:var(--accent)}.model-tabs button:hover{color:var(--cream)}.model-panel{animation:arrive .4s both}.model-panel:focus{outline:none}.model-layout{display:grid;grid-template-columns:1.65fr 1fr;gap:60px;align-items:center;min-height:540px}.model-visual{position:relative;min-width:0;background:#bdbdb8;overflow:hidden;aspect-ratio:1.13;display:flex;align-items:center;justify-content:center}.model-visual>img{width:100%;height:100%;object-fit:contain}.model-description{padding:15px 0}.model-description .small-label{color:#9ab0b4;font-size:9px;letter-spacing:.08em}.model-description h3{font-size:58px;line-height:1.03;margin:24px 0}.model-description>p{font-size:13px;line-height:1.8;color:#a9b8c0;max-width:310px}.view-switch{border:none;padding:0;margin:28px 0 0;max-width:310px}.view-switch legend{font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:#95a8af;margin-bottom:11px;padding:0}.view-switch button{display:flex;justify-content:space-between;align-items:center;width:100%;font-size:11px;padding:13px 0;color:#aebdc4;border-bottom:1px solid #374859}.view-switch button span{font-size:20px;line-height:1}.view-switch button.active{color:var(--accent)}.model-footnote{border-top:1px solid #3c4b5a;padding-top:16px;margin-top:36px;display:flex;justify-content:space-between;gap:12px;font-size:8px;letter-spacing:.075em;color:#8a9da7}.model-footnote>span:last-child{text-transform:none;letter-spacing:0}.render-label{position:absolute;top:20px;left:20px;font-size:8px;background:rgba(244,244,235,.9);color:var(--navy);padding:6px 9px;letter-spacing:.12em}.expand-button{position:absolute;bottom:18px;right:18px;background:rgba(255,255,255,.9);padding:10px 14px;display:flex;align-items:center;gap:25px;font-size:9px;line-height:1;box-shadow:0 2px 15px rgba(0,0,0,.05)}.expand-button span{font-size:20px}.expand-button:hover{background:var(--accent)}.polo-visual{background:#f1eee5}.polo-visual>img{object-fit:contain}.polo-selector{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:24px;max-width:310px}.polo-option{padding:2px;border:1px solid #526068;position:relative;background:var(--cream);transition:border .2s,transform .2s}.polo-option img{width:100%;aspect-ratio:1;object-fit:cover}.polo-option[aria-pressed=true]{border:2px solid var(--accent);padding:1px;transform:translateY(-3px)}.polo-option:hover{border-color:var(--accent);transform:translateY(-3px)}.gorro-visual{position:relative;background:#172337;aspect-ratio:1.13;display:flex;align-items:center;justify-content:center;min-width:0}.gorro-visual video{width:100%;height:100%;object-fit:contain;max-height:640px;background:#172337}.model-description .video-instruction{margin-top:20px;font-size:11px}.model-description .light-link{font-size:11px;margin-top:20px;color:var(--accent)}.closing-strip{background:var(--accent);color:var(--navy);padding:27px 0;overflow:hidden}.closing-strip>div{display:flex;align-items:center;justify-content:center;gap:32px;font-size:24px;font-weight:400;letter-spacing:-.04em;white-space:nowrap}.closing-strip span{font-size:28px;line-height:1;font-family:Georgia,serif}
/* Contact closes the story in the same editorial voice. */
.contact-section{padding-top:90px;padding-bottom:78px}.contact-top{display:flex;justify-content:space-between;align-items:center;color:#716c66;font-size:9px;letter-spacing:.04em;gap:20px}.contact-top .section-index{margin:0;font-size:10px;letter-spacing:.1em;color:var(--navy)}.contact-main{display:flex;justify-content:space-between;align-items:center;gap:60px;padding:50px 0}.contact-main h2{font-size:clamp(50px,6vw,90px)}.contact-main h2 em{color:var(--accent-deep)}.contact-circle{display:grid;place-items:center;flex-shrink:0;width:140px;height:140px;background:var(--navy);color:var(--accent);font-size:80px;font-weight:400;border-radius:50%;transition:background .3s,transform .3s}.contact-circle:hover{background:var(--blue);transform:rotate(7deg)}.contact-circle span{transform:translateY(-3px)}.contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px;border-top:1px solid var(--line);padding-top:24px}.email-link{display:flex;align-items:center;gap:27px;font-size:24px;letter-spacing:-.04em}.email-link span{font-size:24px;color:var(--accent-deep)}.contact-bottom .text-link{font-size:11px}.site-footer{display:flex;justify-content:space-between;gap:24px;padding:23px 4.5%;border-top:1px solid var(--line);font-size:8px;letter-spacing:.02em;color:#79716a}.site-footer a{color:var(--navy)}.site-footer a span{margin-left:16px;font-size:15px}
/* Modal gallery is keyboard navigable and never crops the original. */
.lightbox{position:fixed;inset:0;width:min(1160px,94vw);max-width:none;height:92svh;max-height:none;padding:0;border:0;color:var(--navy);background:var(--cream);overflow:hidden}.lightbox::backdrop{background:rgba(3,14,28,.87);backdrop-filter:blur(8px)}.lightbox[open]{display:flex;flex-direction:column;animation:arrive .2s both}.lightbox-head{display:flex;justify-content:space-between;align-items:center;padding:20px 26px;border-bottom:1px solid var(--line);flex-shrink:0}.lightbox-head h2{font-size:23px;letter-spacing:-.035em;margin-top:4px}.lightbox-head>div>span{font-size:8px;letter-spacing:.13em;text-transform:uppercase;color:#776e68}.lightbox-close{width:42px;height:42px;font-size:22px;border:1px solid #d2c6bd;border-radius:50%;display:grid;place-items:center;line-height:1;flex-shrink:0}.lightbox-close:hover{background:var(--accent)}.lightbox-stage{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;padding:28px 80px;background:#eae7de}.lightbox-stage.dark{background:#40343a}.lightbox-stage>img{width:100%;height:100%;object-fit:contain;min-height:0}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);height:42px;width:42px;border-radius:50%;background:var(--paper);display:grid;place-items:center;font-size:24px;box-shadow:0 2px 20px #0001}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-prev:hover,.lightbox-next:hover{background:var(--accent)}.lightbox-footer{flex-shrink:0;display:flex;justify-content:space-between;gap:20px;font-size:9px;padding:15px 27px;letter-spacing:.03em;border-top:1px solid var(--line);color:#716a66}.lightbox-footer>span:first-child{color:var(--navy)}.body-locked{overflow:hidden}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .75s,transform .75s}.js .reveal.visible{opacity:1;transform:translateY(0)}
@media(min-width:1600px){.hero{padding-left:max(4.5%,calc((100vw - 1392px)/2 + 64px));padding-right:max(4.5%,calc((100vw - 1392px)/2 + 64px))}.hero-art{right:calc((100vw - 1530px)/2);width:740px}.hero-copy{width:700px}.hero h1{font-size:118px}}
@media(max-width:1180px){.section-wrap{padding-left:44px;padding-right:44px}.hero{min-height:690px}.hero h1{font-size:8vw}.hero-copy{width:55%;padding-bottom:90px}.hero-art{top:23%;height:62%;width:49%}.hero-copy p{max-width:270px;font-size:14px}.hero-mark{font-size:85px}.hero-polo{bottom:1%;left:0}.intro-main,.section-heading{gap:65px}.work-layout{grid-template-columns:1fr 1.4fr}.work-copy{padding-left:30px}.work-copy h3{font-size:38px}.work-copy p{max-width:235px;font-size:12px}.work-image{margin-left:28px}.work-copy .button{font-size:10px}.model-layout{gap:38px;grid-template-columns:1.5fr 1fr;min-height:480px}.model-description h3{font-size:49px}.art-button img{padding:18px}.gallery-hint{display:none}.discipline-links strong{font-size:14px}.contact-main h2{font-size:7vw}.closing-strip>div{font-size:21px;gap:20px}}
@media(max-width:900px){.site-header{padding:0 28px;height:78px;gap:15px}.desktop-nav{gap:24px}.header-contact{margin-left:18px}.brand img{width:143px;height:62px}.hero{height:760px;max-height:none;min-height:0;padding:27px 34px 20px}.hero-copy{margin:90px 0 0;padding:0;z-index:4}.hero h1{font-size:78px}.hero-copy p{font-size:13px;max-width:244px;margin:25px 0}.hero-art{top:25%;width:48%;height:57%}.hero-architecture{top:8%;width:107%;right:-13%}.hero-stamp{bottom:4%;right:2%;width:38%}.hero-polo{width:50%;left:0;bottom:0}.hero-mark{top:2%;left:-9%}.hero-coordinate{display:none}.hero-bottom{margin-top:auto}.hero-top .eyebrow{font-size:8px}.hero-location{font-size:9px}.intro,.web-section,.graphic-section,.model-section{padding-top:75px;padding-bottom:75px}.intro-main{gap:45px}.intro h2{font-size:48px}.intro-note p{font-size:12px}.discipline-links a{padding-right:12px}.discipline-links a:not(:first-child){padding-left:14px}.discipline-links b{right:10px}.discipline-links strong{font-size:12px}.discipline-links a>span{font-size:8px;letter-spacing:.05em}.section-heading{gap:38px;margin-bottom:48px}.section-heading h2{font-size:56px}.section-heading>p,.section-heading>div>p{font-size:12px}.work-layout{grid-template-columns:1fr}.work-copy{padding:40px;display:grid;grid-template-columns:1fr 1fr;gap:0 40px;align-items:start}.work-copy>.small-label{grid-column:1/-1}.work-copy h3{font-size:44px;grid-column:1;grid-row:2/5}.work-copy p{grid-column:2;margin-top:25px;max-width:none}.project-tags{grid-column:2;margin:16px 0}.work-copy .button{grid-column:1;justify-self:start}.project-caption{grid-column:2;margin:10px 0}.work-image{margin:0 30px 30px}.marketing-projects{padding-top:65px}.project-featured .marketing-image{padding:26px}.marketing-meta{grid-template-columns:27px 1fr auto;gap:8px}.marketing-meta h3{font-size:29px}.marketing-meta p{font-size:11px}.marketing-duo{gap:27px;margin-top:47px}.marketing-duo .marketing-image{padding:17px;aspect-ratio:1.2}.marketing-duo .marketing-meta h3{font-size:24px}.marketing-meta>.text-link{font-size:10px;gap:15px}.small-label{font-size:8px}.art-grid{grid-template-columns:repeat(3,1fr);gap:30px 18px}.model-layout{grid-template-columns:1.3fr 1fr;gap:30px}.model-visual,.gorro-visual{aspect-ratio:.85}.model-description h3{font-size:43px}.model-description>p{font-size:12px}.model-tabs button{font-size:12px}.model-tabs button+button{padding-left:20px}.model-tabs button>span{margin-right:10px}.model-footnote{flex-direction:column;gap:4px;margin-top:26px}.model-description .small-label{font-size:8px}.polo-selector{gap:5px}.closing-strip>div{font-size:17px;gap:18px}.closing-strip{padding:24px 0}.closing-strip span{font-size:24px}.contact-top{font-size:8px}.contact-main{gap:30px}.contact-circle{width:100px;height:100px;font-size:59px}.email-link{font-size:21px}.site-footer>span:nth-child(2){display:none}}
@media(max-width:640px){html{scroll-padding-top:84px}.section-wrap{padding-left:24px;padding-right:24px}.site-header{height:72px;padding:0 23px;gap:20px}.brand img{width:127px;height:57px}.desktop-nav,.header-contact{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:42px;height:42px;padding:6px;z-index:103}.menu-toggle span{display:block;width:22px;height:1px;background:var(--navy);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav:not([hidden]){display:flex;position:absolute;top:71px;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--line);padding:23px 25px 32px;flex-direction:column;box-shadow:0 20px 25px #0001}.mobile-nav a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:16px 0;font-size:23px;letter-spacing:-.04em}.mobile-nav a span{font-family:var(--serif);font-size:12px;color:#83756e;padding-top:8px}.hero{height:auto;min-height:920px;padding:23px 24px 18px;display:block}.hero-top .eyebrow{font-size:8px;gap:9px;letter-spacing:.08em}.hero-location{font-size:8px;gap:5px}.hero-location>span{display:none}.hero-copy{width:100%;margin:52px 0 0;padding:0}.hero h1{font-size:clamp(60px,12.6vw,83px);letter-spacing:-.072em;line-height:.99}.hero-copy p{font-size:13px;max-width:270px;line-height:1.7;margin:24px 0}.hero-copy .button{padding:15px 18px;font-size:11px;min-height:49px;gap:33px}.hero-art{position:relative;width:100%;height:340px;top:auto;right:auto;margin:38px 0 72px}.hero-orbit{inset:8% -5% 3% 2%}.hero-architecture{top:0;right:-13%;width:95%;transform:rotate(-7deg)}.hero-polo{width:38%;left:-2%;bottom:-8%;transform:rotate(6deg)}.hero-stamp{width:28%;right:8%;bottom:-10%}.hero-mark{top:1%;left:5%;font-size:80px}.hero-bottom{font-size:8px;padding-top:16px;margin-top:0}.hero-bottom>span:nth-child(2){display:none}.hero-bottom>a{gap:18px;font-size:8px}.hero-bottom>a>span{font-size:17px}.intro{padding-top:59px;padding-bottom:60px}.section-kicker{font-size:8px;gap:10px;letter-spacing:.06em}.mini-cross{font-size:23px}.intro-main{grid-template-columns:1fr;gap:30px;margin-top:28px}.intro h2{font-size:45px;line-height:1.04}.intro-note{max-width:none}.intro-note p{font-size:13px;line-height:1.8;margin-bottom:14px}.intro-note .text-link{margin-top:8px;font-size:11px}.discipline-links{grid-template-columns:1fr 1fr;margin-top:37px}.discipline-links a,.discipline-links a:not(:first-child){padding:21px 16px 22px 0}.discipline-links a:nth-child(even){padding-left:18px;border-right:0}.discipline-links a:nth-child(-n+2){border-bottom:1px solid var(--line)}.discipline-links a>span{font-size:8px;margin-bottom:13px}.discipline-links strong{font-size:13px}.discipline-links b{font-size:17px;right:14px;top:18px}.web-section{padding-top:60px;padding-bottom:62px}.section-heading{grid-template-columns:1fr;gap:25px;margin-bottom:38px}.section-index{font-size:9px;margin-bottom:22px}.section-heading h2{font-size:49px;line-height:1.02}.section-heading>p,.section-heading>div>p{font-size:13px;line-height:1.7;max-width:310px}.section-heading>div>.text-link{font-size:11px;margin-top:14px}.web-section .section-heading{margin-bottom:40px}.project-label{font-size:8px;letter-spacing:.06em;gap:9px;margin-bottom:21px}.label-line{margin-left:7px}.work-layout{min-height:0;overflow:hidden}.work-copy{display:block;padding:29px 24px 26px}.small-label{font-size:8px;letter-spacing:.1em}.work-copy h3{font-size:39px;margin:19px 0}.work-copy p{font-size:12px;max-width:280px;margin:0}.project-tags{gap:5px;margin:18px 0 20px}.project-tags span{font-size:8px}.work-copy .button{font-size:11px;padding:14px 17px}.project-caption{margin-top:15px;font-size:8px}.work-image{margin:0 19px 25px 24px;width:calc(100% + 22px)}.browser-bar{font-size:7px;padding:9px 10px;min-height:28px}.browser-bar>span:first-child{gap:3px}.browser-bar i{height:4px;width:4px}.marketing-projects{padding-top:48px}.marketing-projects .project-label{margin-bottom:23px}.project-featured .marketing-image{padding:16px 12px;aspect-ratio:1.22}.project-featured .marketing-image img{object-fit:contain}.image-open{width:32px;height:32px;font-size:18px;right:12px;bottom:12px}.marketing-meta{grid-template-columns:22px 1fr;gap:7px;padding-top:21px}.marketing-meta h3{font-size:29px;margin:7px 0 9px}.marketing-meta p{font-size:12px;max-width:300px}.marketing-meta>.text-link{grid-column:2;justify-self:start;margin-top:8px;font-size:11px;gap:24px}.project-number{font-size:11px}.marketing-duo{display:block;margin-top:33px}.marketing-duo .marketing-project+.marketing-project{margin-top:35px}.marketing-duo .marketing-image{aspect-ratio:1.25;padding:23px 15px}.marketing-duo .marketing-meta{grid-template-columns:22px 1fr;gap:7px;padding-top:21px}.marketing-duo .marketing-meta h3{font-size:29px}.marketing-duo .text-link{margin-top:13px}.graphic-section{padding-top:60px;padding-bottom:50px}.gallery-toolbar{margin-bottom:23px;padding-bottom:20px}.gallery-filters{gap:7px}.filter{font-size:9px;padding:9px 12px}.filter span{font-size:7px;margin-left:4px}.art-grid{grid-template-columns:repeat(2,1fr);gap:25px 13px}.art-button{aspect-ratio:.77}.art-button img{padding:13px}.art-button>span{opacity:1;transform:none;width:22px;height:22px;bottom:8px;right:8px;font-size:12px}.art-caption{padding-top:11px;gap:5px}.art-caption h3{font-size:12px;line-height:1.35}.art-caption p{font-size:7px;letter-spacing:.055em;margin-top:4px}.art-caption>span{font-size:9px}.graphic-transition{margin-top:40px;padding-top:26px;gap:16px}.transition-arrow{font-size:34px}.graphic-transition p{font-size:11px;line-height:1.7}.round-link{width:39px;height:39px;font-size:22px;flex-shrink:0}.model-section{padding-top:60px;padding-bottom:48px}.model-section .section-heading{gap:24px;margin-bottom:35px}.model-tabs{margin-top:0;margin-bottom:27px;grid-template-columns:1fr 1fr 1.2fr}.model-tabs button{font-size:10px;padding:12px 10px 17px 0;line-height:1.5;gap:6px;align-items:flex-start}.model-tabs button+button{padding-left:12px}.model-tabs button>span{font-size:8px;margin:1px 0 0;line-height:1.5}.model-tabs button[data-tab=gorro]{padding-right:0}.model-layout{display:flex;flex-direction:column;gap:26px;min-height:0;align-items:stretch}.model-visual,.gorro-visual{aspect-ratio:1.08;width:100%}.polo-visual{aspect-ratio:1}.model-description{padding:0}.model-description .small-label{font-size:8px}.model-description h3{font-size:43px;margin:18px 0}.model-description h3 br{display:none}.model-description>p{font-size:12px;max-width:none;line-height:1.8}.view-switch{max-width:none;margin-top:22px}.view-switch legend{font-size:8px;margin-bottom:6px}.view-switch button{font-size:11px;padding:12px 0}.model-footnote{flex-direction:row;margin-top:25px;font-size:7px;padding-top:14px}.render-label{left:13px;top:13px;font-size:7px;padding:5px 7px}.expand-button{bottom:12px;right:12px;font-size:8px;gap:16px;padding:8px 10px}.expand-button span{font-size:17px}.polo-selector{grid-template-columns:repeat(4,1fr);max-width:none;gap:8px;margin-top:20px}.polo-option img{aspect-ratio:1.15;object-fit:cover}.model-description .video-instruction{font-size:11px;margin-top:14px}.model-description .light-link{margin-top:14px}.gorro-visual video{max-height:460px}.closing-strip{padding:21px 0}.closing-strip>div{justify-content:flex-start;width:max-content;font-size:19px;gap:25px;transform:translateX(-16px)}.contact-section{padding-top:52px;padding-bottom:40px}.contact-top{align-items:flex-start;flex-direction:column;gap:9px}.contact-top .section-index{font-size:9px}.contact-top>span:last-child{font-size:8px;letter-spacing:.015em}.contact-main{gap:17px;padding:32px 0}.contact-main h2{font-size:39px;line-height:1.04;letter-spacing:-.055em}.contact-circle{width:58px;height:58px;font-size:35px}.contact-circle span{transform:translateY(-1px)}.contact-bottom{flex-direction:column;align-items:start;padding-top:19px;gap:18px}.email-link{font-size:18px;gap:17px}.email-link span{font-size:20px}.contact-bottom .text-link{font-size:10px}.site-footer{padding:20px 24px;align-items:center;font-size:7px;gap:15px}.site-footer a{white-space:nowrap}.site-footer a span{margin-left:8px;font-size:12px}.lightbox{width:100vw;height:100svh;margin:0;max-height:100svh}.lightbox-head{padding:17px 19px}.lightbox-head h2{font-size:20px;margin-top:6px;max-width:250px}.lightbox-head>div>span{font-size:7px}.lightbox-close{width:35px;height:35px;font-size:18px}.lightbox-stage{padding:22px 15px 65px}.lightbox-prev,.lightbox-next{top:auto;bottom:11px;transform:none;width:36px;height:36px;font-size:21px}.lightbox-prev{left:calc(50% - 45px)}.lightbox-next{right:calc(50% - 45px)}.lightbox-footer{padding:14px 19px;font-size:8px;gap:10px}.lightbox-footer>span:last-child{font-size:7px}.js .reveal{transform:translateY(15px)}}
@media(max-width:370px){.hero h1{font-size:56px}.hero{min-height:860px}.hero-art{height:300px}.hero-mark{font-size:65px}.hero-top .eyebrow{font-size:7px}.hero-location{font-size:7px}.hero-copy{margin-top:43px}.hero-polo{width:40%}.contact-main h2{font-size:33px}.contact-circle{width:50px;height:50px;font-size:29px}.email-link{font-size:16px}.section-wrap{padding-left:20px;padding-right:20px}.model-tabs button{font-size:9px}.section-heading h2{font-size:44px}}
@media(max-width:640px){.brand-wordmark{font-size:23px}.brand-wordmark>span{font-size:6px;margin-top:6px}.contact-top{flex-direction:row;align-items:center}.contact-top>span:last-child{max-width:145px;line-height:1.8;text-align:right}.contact-logo{width:118px;height:118px;margin:-18px 0 -17px -13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js .reveal{transform:none!important;opacity:1!important}.hero-mark{animation:none!important}}

/* Preserve the original brand artwork, including its symbol and lettering. */
.site-header{height:122px;background:#fff}
.brand{width:168px;height:116px;overflow:hidden;justify-content:center}
.brand img{width:168px;height:168px;max-width:none;object-fit:contain;mix-blend-mode:normal;flex-shrink:0}
html{scroll-padding-top:136px}
@media(max-width:640px){.site-header{height:100px}.brand{width:140px;height:96px}.brand img{width:140px;height:140px}.mobile-nav:not([hidden]){top:99px}html{scroll-padding-top:114px}}


.brand img{width:150px;height:150px}
@media(max-width:640px){.brand img{width:126px;height:126px}}

/* A focused selection: websites, then the original 3D project views. */
.discipline-links{grid-template-columns:repeat(3,1fr)}
.model-section{position:relative}
.section-alias{position:absolute;top:0;left:0;width:0;height:0}
.polo-selector{grid-template-columns:repeat(3,1fr)}
.hero-stamp{background:#080a09;padding:8px}
.hero-stamp img{aspect-ratio:1;object-fit:contain}
@media(max-width:640px){.discipline-links{grid-template-columns:1fr}.discipline-links a,.discipline-links a:not(:first-child){padding:21px 0;border-right:0;border-bottom:1px solid var(--line)}.discipline-links a:last-child{border-bottom:0}.polo-selector{grid-template-columns:repeat(3,1fr)}}


.web-section .section-heading+.marketing-projects{padding-top:0}
.marketing-projects+.work-project{padding-top:88px}
.marketing-duo .project-mechita .marketing-image{background:#eee8e2}
@media(max-width:900px){.marketing-projects+.work-project{padding-top:65px}}
@media(max-width:640px){.marketing-projects+.work-project{padding-top:48px}}

/* Warm red accents; the original logo artwork and photography stay intact. */
.button-navy{background:var(--accent-deep)}
.button-navy:hover{background:#962f2a}

.casa-menu-card{scroll-margin-top:0}

