/* OLIVA — Proyecto conceptual de Web de Cerca. Sin dependencias externas. */
:root{--paper:#f7f5f0;--paper-2:#efeee8;--paper-3:#e6e7dd;--white:#fff;--ink:#263329;--subtle:#606d62;--muted:#778077;--line:#d8dbd1;--olive:#506251;--dark:#273c33;--darkest:#1c2d27;--gold:#baad87;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--ease:cubic-bezier(.2,.75,.3,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{margin:0;font-family:var(--sans);font-size:16px;line-height:1.55;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b29d67;outline-offset:4px}
button:disabled{cursor:not-allowed}
.container{width:min(1320px,calc(100% - 112px));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.demo-note{min-height:33px;background:var(--darkest);color:#d5ddce;font-size:.58rem;letter-spacing:.15em;font-weight:600}
.demo-note .container{display:flex;justify-content:space-between;gap:24px;align-items:center;padding-block:9px}
.demo-note__right{color:#b6c1b4;letter-spacing:.08em;text-transform:none}
.site-header{height:96px;background:var(--paper);border-bottom:1px solid rgba(61,75,62,.11);position:relative;z-index:40}
.site-header__inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:inline-flex;align-items:center;gap:13px;flex-shrink:0}
.brand__symbol{display:flex;align-items:flex-end;gap:3px;width:29px;height:39px;padding-block:5px}
.brand__symbol i{display:block;width:7px;background:var(--olive);transform:skewY(-16deg)}
.brand__symbol i:nth-child(1){height:22px}.brand__symbol i:nth-child(2){height:32px}.brand__symbol i:nth-child(3){height:26px}
.brand__type{display:flex;flex-direction:column;gap:2px}.brand strong{font:600 2.03rem/1 var(--serif);letter-spacing:-.065em}.brand__period{color:#96a38e}
.brand small{font-size:.54rem;letter-spacing:.22em;font-weight:700;color:#748173;white-space:nowrap}
.nav{display:flex;align-items:center;gap:37px;margin-left:auto}.nav>a:not(.nav__contact){font-size:.75rem;text-transform:uppercase;letter-spacing:.125em;font-weight:650;position:relative;white-space:nowrap}
.nav>a:not(.nav__contact):after{content:'';position:absolute;height:1px;background:var(--ink);left:0;bottom:-7px;right:100%;transition:right .25s var(--ease)}
.nav>a:not(.nav__contact):hover:after,.nav>a.is-current:after{right:0}
.header-cta{display:inline-flex;align-items:center;gap:16px;font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;border:1px solid var(--ink);padding:13px 20px;transition:background .2s,color .2s}.header-cta:hover{background:var(--ink);color:var(--white)}
.header-cta svg,.btn svg,.underlined-link svg,.next-project__icon svg{width:18px;height:18px;flex:none}.nav__contact{display:none}.menu-button{display:none}
/* Reusable editorial system */
.eyebrow,.overline{font-size:.66rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase;display:flex;align-items:center;gap:13px}.eyebrow-line{width:35px;height:1px;background:var(--olive);flex-shrink:0}
.overline{font-size:.62rem;color:#7e8a7e;letter-spacing:.14em}
h1,h2,h3,p,blockquote{margin-top:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.065em;line-height:1.02}h1 em,h2 em,.manifesto blockquote em{font-weight:400;color:var(--olive)}
p{color:var(--subtle)}
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-height:58px;padding:17px 23px;font-size:.77rem;font-weight:700;letter-spacing:.055em;transition:transform .25s var(--ease),background .25s,color .25s;line-height:1.2}
.btn:hover{transform:translateY(-3px)}.btn--dark{color:white;background:var(--dark)}.btn--dark:hover{background:#425849}.btn--outline-light{border:1px solid #b3c0b5;color:#fff;background:transparent}.btn--outline-light:hover{background:rgba(255,255,255,.1)}.btn--cream{background:var(--paper);color:var(--ink)}.btn--cream:hover{background:#e4e9df}
.simple-link{font-size:.8rem;font-weight:700;border-bottom:1px solid currentColor;padding:10px 0;white-space:nowrap}.simple-link span{margin-left:10px}
.underlined-link{display:inline-flex;align-items:center;justify-content:space-between;gap:48px;padding-bottom:10px;border-bottom:1px solid #7f8a7e;font-size:.79rem;font-weight:700;line-height:1.3;transition:gap .2s,color .2s}.underlined-link:hover{gap:56px;color:var(--olive)}
.section{padding-block:120px}.section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:53px}.section-header h2{font-size:clamp(3.6rem,7vw,7.3rem);margin:23px 0 0}.section-header__aside{width:280px;margin:0 0 8px}.section-header__aside p{font-size:.98rem;line-height:1.8;margin-bottom:28px}
/* Hero */
.hero{display:grid;grid-template-columns:45.5% 54.5%;min-height:670px;height:min(780px,calc(100vh - 100px));max-height:810px}
.hero__copy{padding:clamp(48px,6vw,96px) 6% 37px max(56px,calc((100vw - 1320px)/2));display:flex;flex-direction:column;justify-content:center;min-width:0}
.hero__copy .eyebrow{margin-bottom:38px}.hero h1{font-size:clamp(4.45rem,6.85vw,8rem);margin:0 0 32px;white-space:normal}
.hero__lead{font-size:clamp(.99rem,1.3vw,1.16rem);line-height:1.85;max-width:420px;margin-bottom:36px}.hero__buttons{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.hero__index{margin-top:auto;padding-top:55px;display:flex;justify-content:space-between;gap:16px;font-size:.59rem;font-weight:700;color:#919c91;letter-spacing:.16em}
.hero__picture{min-height:570px;position:relative;overflow:hidden}.hero__picture>img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;transition:transform 1.3s var(--ease)}.hero__picture:hover>img{transform:scale(1.025)}
.hero__caption{position:absolute;left:0;bottom:0;right:0;padding:20px 32px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:white;font-size:.68rem;letter-spacing:.1em;background:linear-gradient(0deg,rgba(16,28,20,.72),rgba(16,28,20,.08));min-height:92px}.hero__caption span:nth-child(2){font-size:.74rem;letter-spacing:.02em}
.values{border-block:1px solid var(--line)}.values__grid{display:grid;grid-template-columns:repeat(3,1fr)}.values__grid>div{display:flex;gap:20px;align-items:center;padding:27px 10px 27px 0;font-size:.75rem;font-weight:650;letter-spacing:.065em}.values__grid>div+div{border-left:1px solid var(--line);padding-left:34px}.values__no{font-size:.65rem;color:#92a08f}
.introduction{background:#fff}.intro-grid{display:grid;grid-template-columns:1fr .75fr;gap:16%;align-items:start}.intro-grid h2{font-size:clamp(3.8rem,7vw,7.8rem);margin:23px 0 0}.intro-grid__text{padding-top:44px}.intro-grid__text p{font-size:clamp(1.05rem,1.42vw,1.25rem);line-height:1.85}.intro-grid__text p+p{margin-top:24px}.intro-grid__text .underlined-link{margin-top:25px}
/* Projects */
.section--works{background:var(--paper)}.featured-grid{display:grid;grid-template-columns:1.16fr .84fr;gap:48px 33px;align-items:start}.work-card{display:block;min-width:0}.work-card__media{overflow:hidden;position:relative;background:#dbddd2;aspect-ratio:1.37}.work-card--two{margin-top:110px}.work-card--three{grid-column:1 / -1;width:70%;margin:15px 0 0 auto}.work-card--three .work-card__media{aspect-ratio:2.08}
.work-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease),filter .4s}.work-card:hover .work-card__media img{transform:scale(1.065);filter:saturate(.91)}
.work-card__view{position:absolute;right:23px;bottom:23px;width:46px;height:46px;display:grid;place-items:center;background:var(--paper);color:var(--ink);border-radius:50%;transform:translateY(7px);opacity:0;transition:transform .2s,opacity .2s}.work-card:hover .work-card__view{transform:translateY(0);opacity:1}.work-card__view svg{width:19px;height:19px}
.work-card__meta{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:21px 0 0}.work-card__meta h3{font-family:var(--serif);font-size:clamp(2rem,3vw,3.3rem);letter-spacing:-.065em;line-height:1.1;margin:8px 0 5px}.work-card__meta p{font-size:.81rem;margin:0}.work-card__arrow{font-size:1.6rem;font-weight:300}
/* Dark sections */
.approach{background:var(--dark);color:#f5f5ec;padding:122px 0}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:13%;align-items:center}.approach .eyebrow{color:#becbc1}.approach .eyebrow-line{background:#b0c3b0}.approach h2{font-size:clamp(3.8rem,6.4vw,6.9rem);margin:22px 0 25px}.approach h2 em{color:#c4d0bf}.approach p{font-size:1.05rem;line-height:1.9;color:#ced7ce;max-width:450px;margin-bottom:35px}.approach__rows a{display:flex;align-items:center;gap:25px;border-bottom:1px solid rgba(225,233,225,.25);padding:24px 0}.approach__rows a:first-child{border-top:1px solid rgba(225,233,225,.25)}.approach__rows a span:first-child{color:#a9b9ac;font-size:.64rem;letter-spacing:.1em;white-space:nowrap}.approach__rows a strong{font-size:clamp(1.15rem,2vw,1.95rem);font-family:var(--serif);font-weight:400;letter-spacing:-.03em;flex:1}.approach__rows a span:last-child{font-size:1.2rem;transition:transform .3s}.approach__rows a:hover span:last-child{transform:translate(4px,-4px)}
/* How it works */
.process{background:#fff}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;border-top:1px solid var(--line);padding-top:30px}.steps>div{padding-right:10px}.steps span{color:#8a9589;font-size:.63rem;letter-spacing:.14em;font-weight:700}.steps h3{font-size:1.7rem;font-family:var(--serif);letter-spacing:-.04em;margin:30px 0 10px}.steps p{font-size:.87rem;line-height:1.75;max-width:245px}
.manifesto{display:grid;grid-template-columns:1fr 1fr;min-height:640px;background:#e9e9df}.manifesto__image{overflow:hidden}.manifesto__image img{height:100%;width:100%;object-fit:cover}.manifesto__copy{padding:clamp(45px,7vw,105px) 10%;display:flex;flex-direction:column;justify-content:center}.manifesto blockquote{font-family:var(--serif);font-size:clamp(2.4rem,4vw,4.5rem);letter-spacing:-.045em;line-height:1.2;margin:36px 0}.manifesto__copy>p{font-size:.94rem;line-height:1.85;max-width:450px;margin-bottom:35px}
.contact-banner{background:#bdc8b8;padding:95px 0}.contact-banner__grid{display:flex;align-items:flex-end;justify-content:space-between;gap:45px}.contact-banner h2{font-size:clamp(3.7rem,6.5vw,7rem);margin:20px 0 22px}.contact-banner h2 em{color:#526756}.contact-banner p{font-size:.98rem;margin:0}.contact-banner .btn{align-self:center;min-width:200px}
/* Pages */
.page-intro{padding:98px 0 90px}.page-intro__split{display:grid;grid-template-columns:1.3fr .55fr;gap:10%;align-items:end;margin-top:30px}.page-intro h1{font-size:clamp(4.6rem,8.5vw,9.3rem);margin:0}.page-intro__split p{font-size:1.08rem;line-height:1.85;max-width:370px;padding-bottom:12px;margin:0}
.archive{padding-top:10px;background:var(--paper)}.filters{display:flex;gap:9px;flex-wrap:wrap;border-block:1px solid var(--line);padding:19px 0;margin-bottom:48px}.filters button{border:0;background:transparent;padding:10px 17px;color:#69786b;font-size:.72rem;font-weight:700;letter-spacing:.05em;transition:background .15s,color .15s}.filters button.is-active,.filters button:hover{background:var(--dark);color:white}.filters button span{font-size:.62rem;opacity:.7;margin-left:5px}
.archive-grid{display:grid;grid-template-columns:1fr 1fr;gap:68px 36px}.archive-grid .work-card:nth-child(even){margin-top:100px}.archive-grid .work-card__media{aspect-ratio:1.24}.archive-grid .work-card[hidden]{display:none!important}
/* Case study */
.case-hero{padding-top:52px}.back-link{font-size:.78rem;color:#6e7d6e;text-decoration:underline;text-underline-offset:5px}.case-title{padding:65px 0 55px;display:flex;justify-content:space-between;align-items:flex-end;gap:25px}.case-title h1{font-size:clamp(5.8rem,11vw,11.2rem);margin:16px 0 0}.case-title h1 em{color:#a7b5a1;font-style:normal}.case-title p{text-align:right;font-size:.9rem;margin:0 0 10px;line-height:2}.case-title__hairline{display:block;height:1px;background:var(--line);margin:12px 0;width:180px;margin-left:auto}.case-cover{height:min(760px,70vw);min-height:360px;overflow:hidden}.case-cover img{width:100%;height:100%;object-fit:cover}
.case-content{background:#fff}.case-intro{display:grid;grid-template-columns:.37fr .63fr;gap:13%;margin-bottom:95px}.case-facts>div{padding:20px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:7px}.case-facts>div:first-child{padding-top:0}.case-facts span{font-size:.59rem;color:#7a877b;font-weight:700;letter-spacing:.13em}.case-facts strong{font-weight:400;font-family:var(--serif);font-size:1.4rem}.case-intro h2{font-size:clamp(2rem,3.3vw,4.5rem);line-height:1.2;letter-spacing:-.035em;margin:22px 0 24px}.case-intro p{font-size:1.05rem;line-height:1.95;max-width:720px}
.case-image-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.photo-button{display:block;position:relative;overflow:hidden;aspect-ratio:1.23;border:0;background:#e9e6dd;padding:0;text-align:left}.photo-button img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.photo-button:hover img{transform:scale(1.05)}.photo-button span{position:absolute;bottom:22px;right:22px;background:var(--paper);padding:11px 18px;font-size:.72rem;font-weight:700}
.case-bottom{display:grid;grid-template-columns:.37fr .63fr;gap:13%;margin-top:75px;align-items:start}.case-bottom span{font-size:.64rem;letter-spacing:.16em;color:#708272;font-weight:700}.case-bottom p{max-width:690px;font-size:1.15rem;line-height:1.9}.case-disclaimer{margin-top:60px;padding:20px 23px;background:#f4f3ed;font-size:.73rem;color:#6d756e;border-left:2px solid #a3b09f}
.next-project{background:var(--dark);color:#fff}.next-project__link{padding:83px 0;display:grid;grid-template-columns:.32fr 1fr auto;align-items:center;gap:20px}.next-project__link>span:first-child{color:#b2c2b3;font-size:.64rem;letter-spacing:.15em}.next-project__link strong{font-size:clamp(3rem,6vw,6rem);font-family:var(--serif);font-weight:400;letter-spacing:-.06em}.next-project__icon{border:1px solid rgba(255,255,255,.55);width:65px;height:65px;display:grid;place-items:center;border-radius:50%;transition:background .2s,color .2s}.next-project__link:hover .next-project__icon{background:var(--paper);color:var(--dark)}
/* Services */
.services{background:white}.service-row{display:grid;grid-template-columns:70px 1fr minmax(220px,.95fr);gap:7%;padding:45px 0;border-bottom:1px solid var(--line);align-items:center;min-height:400px}.service-row:first-child{padding-top:0}.service-row__number{align-self:start;font-size:.7rem;letter-spacing:.14em;color:#9baba0;font-weight:700}.service-row h2{font-size:clamp(2.6rem,3.8vw,4.9rem);margin:17px 0 21px}.service-row p{font-size:1rem;line-height:1.8;max-width:460px}.service-row ul{padding-left:17px;color:#617363;font-size:.85rem;line-height:1.9;margin-top:24px}.service-row img{width:100%;height:380px;object-fit:cover}.faq{background:var(--paper)}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:16%}.faq h2{font-size:clamp(3rem,6vw,6rem);margin-top:18px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;font-size:.96rem;font-weight:650;display:flex;align-items:center;justify-content:space-between;gap:15px}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:1.4rem;color:#778e79}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:.88rem;line-height:1.85;margin:18px 0 0}
/* Studio */
.studio-photo{height:720px;max-height:65vw;min-height:330px;position:relative}.studio-photo img{height:100%;width:100%;object-fit:cover}.studio-photo__caption{position:absolute;right:35px;bottom:25px;color:white;font-size:.65rem;letter-spacing:.12em;text-shadow:0 1px 15px #000}.studio-gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;padding:15px;background:white}.studio-gallery img{width:100%;height:440px;object-fit:cover}
/* Contact */
.contact-intro{padding-bottom:50px}.contact-layout{display:grid;grid-template-columns:.85fr 1fr;gap:14%;align-items:start}.contact-side h2{font-size:clamp(3.3rem,5vw,6rem);margin:15px 0 25px}.contact-side p{line-height:1.95;max-width:400px}.contact-email{display:inline-block;font-size:.95rem;font-weight:700;border-bottom:1px solid var(--ink);margin-top:25px;word-break:break-word}.inquiry-form{display:grid;gap:27px}.inquiry-form label{display:flex;flex-direction:column;gap:12px;font-weight:700;font-size:.76rem;letter-spacing:.045em}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;border:0;border-bottom:1px solid #b8c0b6;background:transparent;outline:none;color:var(--ink);padding:13px 0 15px;font-weight:400;font-size:.94rem;resize:vertical;border-radius:0}.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus{border-bottom:2px solid var(--olive)}.inquiry-form .btn{border:none;justify-self:start}.form-notice{font-size:.72rem;max-width:470px;line-height:1.6;margin:-10px 0 0}
/* Footer */
.site-footer{background:var(--darkest);color:#f5f5ee;padding-top:79px}.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr;gap:45px;padding-bottom:110px}.brand--footer .brand__type strong{font-size:3.4rem}.brand--footer .brand__type small{color:#b0beaf}.footer-grid>div:first-child>p{color:#b8c6b9;max-width:350px;font-family:var(--serif);font-size:1.4rem;line-height:1.55;margin:22px 0 0}.footer-heading{font-weight:700;letter-spacing:.14em;font-size:.66rem;color:#aabbac;margin-bottom:24px;text-transform:uppercase}.footer-grid>div:nth-child(n+2){display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-grid>div:nth-child(n+2) a{font-size:.91rem;color:#e1e8dd;transition:color .2s}.footer-grid>div:nth-child(n+2) a:hover{color:#c6d6bb}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.14);color:#a8b9ab;font-size:.66rem;letter-spacing:.04em;padding:25px 0 29px}
/* Modal */
dialog.photo-dialog{border:0;padding:0;background:transparent;max-width:min(1150px,92vw);max-height:92vh;box-shadow:0 28px 95px #0006;color:white}dialog.photo-dialog::backdrop{background:#111d18e6}.photo-dialog__image{display:block;max-height:79vh;max-width:92vw;object-fit:contain}.photo-dialog__bar{display:flex;justify-content:space-between;background:#26372f;padding:14px 22px;align-items:center;gap:20px;font-size:.72rem}.photo-dialog__close{color:white;border:1px solid #acbba9;background:transparent;padding:7px 12px}
/* Motion */
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media(max-width:1200px){.container{width:min(100% - 72px,1180px)}.nav{gap:24px}.hero__copy{padding-left:36px}.hero h1{font-size:clamp(4.3rem,6.6vw,7rem)}.hero__buttons{gap:17px}.hero__buttons .btn{padding-inline:17px}}
@media(max-width:920px){.site-header{height:79px}.menu-button{display:flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:8px;background:transparent;border:1px solid var(--line);margin-left:auto}.menu-button span{height:1px;background:var(--ink);display:block;width:100%;transition:transform .2s,opacity .2s}.menu-button[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-button[aria-expanded=true] span:nth-child(2){opacity:0}.menu-button[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.nav{display:none;position:absolute;top:79px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:27px 36px 38px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 16px 20px #1d34220a}.nav.is-open{display:flex}.nav>a{padding:15px 0!important;border-bottom:1px solid var(--line);font-size:1rem!important;display:flex;justify-content:space-between}.nav>a::after{display:none}.nav__contact{display:flex!important}.header-cta{margin-left:auto}.hero{height:auto;max-height:none;min-height:0;grid-template-columns:1fr 1fr}.hero__copy{padding:55px 25px 28px 36px}.hero h1{font-size:clamp(3.6rem,7vw,5.7rem)}.hero__lead{font-size:.97rem}.hero__picture{min-height:590px}.hero__index{display:none}.hero__buttons{margin-top:0}.values__grid>div{font-size:.7rem}.featured-grid{gap:30px}.approach-grid{gap:6%}.service-row{grid-template-columns:40px 1fr .75fr;gap:4%}.service-row img{height:330px}.page-intro__split{gap:5%}.footer-grid{grid-template-columns:1.35fr 1fr 1fr}.contact-banner h2{font-size:5rem}}
@media(max-width:680px){.container{width:calc(100% - 42px)}.demo-note{font-size:.53rem;letter-spacing:.09em}.demo-note__right{display:none}.demo-note .container{justify-content:center;text-align:center;min-height:35px}.brand__symbol{width:22px;height:32px}.brand__symbol i{width:6px}.brand strong{font-size:1.8rem}.brand small{font-size:.46rem}.site-header__inner{gap:10px}.header-cta{display:none}.nav{padding:20px 22px 33px}
.hero{display:flex;flex-direction:column}.hero__copy{padding:68px 21px 54px;min-height:0}.hero__copy .eyebrow{margin-bottom:24px}.hero h1{font-size:clamp(3.7rem,14vw,6.2rem);letter-spacing:-.07em;margin-bottom:26px}.hero__lead{font-size:1rem;line-height:1.8;max-width:490px;margin-bottom:27px}.hero__buttons{gap:25px}.hero__buttons .btn{min-width:184px}.hero__picture{height:410px;min-height:410px}.hero__caption{padding:17px 20px;min-height:70px}.hero__caption span:nth-child(2){font-size:.62rem}
.values__grid{grid-template-columns:1fr;gap:0}.values__grid>div{padding:15px 0;border-bottom:1px solid var(--line);font-size:.75rem}.values__grid>div+div{padding:15px 0;border-left:0}.values__grid>div:last-child{border-bottom:0}.values__no{width:30px}
.section{padding-block:78px}.section-header{display:block;margin-bottom:38px}.section-header h2{font-size:clamp(3.65rem,13vw,5.8rem)}.section-header__aside{width:100%;margin:26px 0 0}.section-header__aside p{margin-bottom:16px}.intro-grid{display:block}.intro-grid h2{font-size:clamp(3.75rem,13vw,6.2rem)}.intro-grid__text{padding-top:22px}.intro-grid__text p{font-size:1.04rem}
.featured-grid{display:block}.work-card+.work-card{margin-top:50px}.work-card--three{width:100%;margin-top:50px!important}.work-card__media,.work-card--three .work-card__media{aspect-ratio:1.15}.work-card__view{opacity:1;transform:none;right:14px;bottom:14px;width:38px;height:38px}.work-card__meta h3{font-size:2.7rem}.work-card__meta{padding-top:17px}
.approach{padding:80px 0}.approach-grid{grid-template-columns:1fr;gap:50px}.approach h2{font-size:clamp(3.6rem,12vw,6rem)}.approach__rows a{padding:19px 0}.approach__rows a strong{font-size:1.4rem}
.steps{grid-template-columns:1fr 1fr;gap:33px 23px}.steps h3{font-size:1.5rem;margin:13px 0 10px}
.manifesto{grid-template-columns:1fr}.manifesto__image{height:400px}.manifesto__copy{padding:66px 21px 77px}.manifesto blockquote{font-size:clamp(2.6rem,9vw,4rem)}
.contact-banner{padding:67px 0}.contact-banner__grid{display:block}.contact-banner h2{font-size:clamp(3.6rem,12vw,5.7rem)}.contact-banner .btn{margin-top:33px}
.page-intro{padding:71px 0 45px}.page-intro__split{display:block}.page-intro h1{font-size:clamp(4.4rem,13vw,7rem)}.page-intro__split p{font-size:1rem;padding:25px 0 0}.filters{gap:3px;margin-bottom:34px;padding:13px 0}.filters button{padding:10px 11px;font-size:.69rem}.archive-grid{grid-template-columns:1fr;gap:43px}.archive-grid .work-card:nth-child(even){margin-top:0}.archive-grid .work-card__media{aspect-ratio:1.15}
.case-hero{padding-top:30px}.case-title{display:block;padding:46px 0 34px}.case-title h1{font-size:clamp(5rem,14vw,7.5rem)}.case-title p{text-align:left;margin:20px 0 0}.case-title__hairline{display:none}.case-cover{height:480px;min-height:0}.case-intro{display:flex;flex-direction:column-reverse;gap:32px;margin-bottom:45px}.case-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:0 22px}.case-facts>div:first-child{padding-top:20px}.case-intro h2{font-size:2.25rem;margin:17px 0 20px}.case-intro p{font-size:.98rem}.case-image-row{grid-template-columns:1fr;gap:15px}.case-image-row .photo-button{aspect-ratio:1.3}.case-bottom{display:block;margin-top:45px}.case-bottom p{margin-top:20px;font-size:1.05rem}.case-disclaimer{margin-top:40px}.next-project__link{grid-template-columns:1fr auto;padding:45px 0}.next-project__link>span:first-child{grid-column:1 / -1}.next-project__link strong{font-size:3.75rem}.next-project__icon{width:50px;height:50px}
.service-row{grid-template-columns:1fr;padding:44px 0;gap:12px}.service-row__number{font-size:.7rem}.service-row h2{font-size:clamp(2.7rem,11vw,4.1rem)}.service-row img{height:310px;order:-1;margin-bottom:8px}.service-row__number{order:-1}.service-row ul{margin-top:15px}.faq-grid{grid-template-columns:1fr;gap:32px}.faq h2{font-size:3.9rem}
.studio-photo{height:470px;max-height:none;min-height:0}.studio-gallery{grid-template-columns:1fr 1fr;padding:10px;gap:9px}.studio-gallery img{height:210px}.studio-gallery img:last-child{grid-column:1 / -1;height:250px}
.contact-layout{grid-template-columns:1fr;gap:45px}.contact-side h2{font-size:4.1rem}.field-grid{grid-template-columns:1fr;gap:25px}.inquiry-form{gap:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px 30px;padding-bottom:70px}.footer-grid>div:first-child{grid-column:1 / -1}.brand--footer .brand__type strong{font-size:3rem}.footer-bottom{display:block;line-height:2}
}
@media(max-width:380px){.hero h1{font-size:3.4rem}.hero__buttons{display:block}.hero__buttons .btn{display:flex}.hero__buttons .simple-link{display:inline-block;margin-top:17px}.page-intro h1{font-size:4rem}.case-title h1{font-size:4.6rem}.hero__picture{height:350px;min-height:350px}.work-card__meta h3{font-size:2.1rem}}
