@font-face {
    font-family: 'Marchesa';
    src: url('../Marchesa.otf') format('opentype');
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    background:#000;
    overflow-x:hidden;
    font-family:'Cormorant Garamond', serif;
}

.hero{
    position:relative;
    width:100%;
    height:100vh;
    overflow:hidden;
}

.hero iframe{
    position:absolute;
    top:50%;
    left:50%;
    width:177.77vh;
    height:56.25vw;
    min-width:100%;
    min-height:100%;
    transform:translate(-50%,-50%);
    border:none;
    pointer-events:none;
}

.hero-overlay{
    position:absolute;
    bottom:4%;
    left:50%;
    transform:translateX(-50%);
    text-align:center;
    color:white;
    width:100%;
    z-index:10;
}

.logo-title{
    width:960px;
    max-width:85vw;
    display:block;
    margin:0 auto;
    transform:translateY(110px);
    opacity:0;
    animation:heroFadeIn 5s linear 7s forwards;
}

.hero-overlay p{
    font-size:1.8rem;
    margin-top:120px;
    opacity:0;
    animation:heroFadeIn 3s ease 1s forwards;
}

@keyframes heroFadeIn{
    from{opacity:0;}
    to{opacity:1;}
}

.black-title{
    position:absolute;
    top:125vh;
    left:0;
    width:100%;
    height:100vh;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    color:white;
    z-index:20;
    opacity:1;
    transition:opacity 1.5s ease;
}

.black-title.fade-out{
    opacity:0;
    pointer-events:none;
}

.black-title h2{
    font-size:5.6rem;
    letter-spacing:10px;
    font-weight:400;
    max-width:1400px;
    line-height:1;
}

.black-title p{
    margin-top:20px;
    font-size:1.8rem;
}

.featured-story{
    position:sticky;
    top:0;
    height:100vh;
    overflow:hidden;
    background:#000;
    z-index:5;
    margin-top:30vh;
}

.featured-story::after{
    content:'';
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:40vh;
    background:linear-gradient(
        to bottom,
        rgba(0,0,0,0),
        rgba(255,255,255,1)
    );
    opacity:var(--gradient-fade,0);
    pointer-events:none;
}

.featured-video{
    position:absolute;
    inset:0;
    opacity:0;
    transition:opacity .2s linear;
}

.featured-video iframe{
    position:absolute;
    top:50%;
    left:50%;
    width:177.77vh;
    height:56.25vw;
    min-width:100%;
    min-height:100%;
    transform:translate(-50%,-50%);
    border:none;
}

.video-scroll-spacer{
    height:20vh;
}

body::after{
    content:'';
    position:fixed;
    inset:0;
    background:transparent;
    opacity:var(--white-fade,0);
    pointer-events:none;
    z-index:15;
}

.stories-section{
    background:#fff;
    color:#111;
    padding:10px 34px 30px;
    position:relative;
    z-index:20;
    min-height:100vh;
    height:100vh;
    overflow:hidden;
}

.stories-section::after{
    content:'';
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.9);
    opacity:0;
    pointer-events:none;
    transition:opacity .45s ease;
    z-index:30;
}

.stories-section.is-cinema::after{
    opacity:1;
}

.stories-header{
    max-width:1840px;
    margin:0 auto;
    height:56px;
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.stories-logo{
    width:180px;
    max-width:42vw;
    display:block;
}

.stories-nav{
    display:flex;
    align-items:center;
    gap:38px;
    font-family:Arial, Helvetica, sans-serif;
    font-size:.68rem;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.stories-nav a{
    color:#0087a8;
    text-decoration:none;
}

.stories-cover{
    max-width:1840px;
    height:calc(100vh - 330px);
    min-height:430px;
    max-height:720px;
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(480px, .95fr) minmax(0, 1.75fr);
    grid-template-rows:1fr;
    gap:10px;
}

.stories-copy{
    grid-column:1;
    grid-row:1;
    align-self:center;
    width:100%;
    max-width:none;
    padding:0 48px 0 10px;
    opacity:1;
    transition:opacity .38s ease;
    overflow:hidden;
    position:relative;
    min-height:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.stories-copy.is-changing{
    opacity:0;
}

.set-graphic{
    position:absolute;
    display:block;
    pointer-events:none;
    user-select:none;
    opacity:.86;
    z-index:0;
}

.set-graphic-filmset{
    top:0;
    left:26%;
    width:min(70%, 520px);
    transform:translateY(-3%);
}

.set-graphic-left{
    left:-2%;
    bottom:4%;
    width:min(24%, 180px);
}

.set-graphic-right{
    right:0;
    bottom:5%;
    width:min(25%, 190px);
}

.stories-label,
.stories-copy span:not(.stories-label),
.stories-copy h2,
.stories-copy p,
.stories-copy a{
    position:relative;
    z-index:1;
}

.stories-label{
    display:block;
    margin-bottom:36px;
    color:#111;
    font-family:Arial, Helvetica, sans-serif;
    font-size:.62rem;
    font-weight:700;
    letter-spacing:.22em;
    line-height:1;
    text-transform:uppercase;
}

.stories-copy span:not(.stories-label){
    display:block;
    margin-bottom:16px;
    color:#0087a8;
    font-family:Arial, Helvetica, sans-serif;
    font-size:clamp(.62rem, .72vw, .76rem);
    font-weight:700;
    letter-spacing:.08em;
    line-height:1.35;
    text-transform:uppercase;
}

.stories-copy h2{
    font-size:clamp(3.4rem, 5vw, 7.1rem);
    line-height:.94;
    font-weight:400;
    overflow-wrap:break-word;
    hyphens:none;
    word-break:normal;
}

.stories-copy p{
    max-width:520px;
    margin-top:20px;
    font-family:Arial, Helvetica, sans-serif;
    font-size:clamp(.86rem, .9vw, 1rem);
    line-height:1.45;
}

.stories-copy a{
    display:inline-block;
    margin-top:22px;
    color:#0087a8;
    font-family:Arial, Helvetica, sans-serif;
    font-size:clamp(.62rem, .72vw, .78rem);
    font-weight:700;
    letter-spacing:.08em;
    line-height:1.3;
    text-decoration:none;
    text-transform:uppercase;
    transition:color .35s ease;
}

.stories-copy a::after{
    content:'  >';
}

.stories-copy a:hover{
    color:#111;
}

.cover-image,
.strip-item{
    display:block;
    overflow:hidden;
    position:relative;
    text-decoration:none;
}

.story-media{
    background:#000;
    isolation:isolate;
    border-radius:7px;
}

.cover-image img,
.strip-item img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform 1.4s ease;
}

.story-image{
    position:absolute;
    inset:0;
    opacity:0;
    transform:scale(1.012);
    transition:opacity 1.15s ease, transform 8s ease;
}

.story-image.is-active{
    opacity:1;
    transform:scale(1.04);
}

.story-media:hover .story-image.is-active{
    transform:scale(1.055);
}

.story-media iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
    opacity:0;
    pointer-events:none;
    transition:opacity .45s ease;
}

.story-media.has-video img{
    opacity:0;
}

.story-media.has-video iframe{
    opacity:1;
}

.cover-image:hover img:not(.story-image){
    transform:scale(1.025);
}

.cover-image{
    transition:opacity .35s ease;
}

.cover-image.amazonas{
    grid-column:2;
    grid-row:1;
    aspect-ratio:16 / 9;
    width:100%;
    height:100%;
}

.cover-image.amazonas img{
    object-position:center center;
}

.story-strip{
    max-width:1840px;
    --thumb-gap:10px;
    --thumb-height:clamp(112px, 8vw, 148px);
    max-height:calc((var(--thumb-height) * 2) + var(--thumb-gap));
    margin:10px auto 0;
    display:grid;
    grid-template-columns:repeat(5, 1fr);
    grid-auto-rows:var(--thumb-height);
    gap:var(--thumb-gap);
    padding:0 0 10px 0;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:#111 transparent;
}

.story-strip::-webkit-scrollbar{
    width:6px;
}

.story-strip::-webkit-scrollbar-track{
    background:transparent;
}

.story-strip::-webkit-scrollbar-thumb{
    background:#111;
}

.strip-item{
    background:#000;
    height:var(--thumb-height);
    opacity:1;
    border-radius:7px;
    outline:1px solid transparent;
    outline-offset:-1px;
    transition:opacity .35s ease, outline-color .35s ease, transform .35s ease;
}

.story-strip .strip-item:hover,
.story-strip .strip-item.is-active{
    opacity:1;
    outline-color:#111;
}

.stories-section.is-browsing-stories .story-trigger,
.stories-section.is-browsing-stories .story-media{
    opacity:.75;
}

.stories-section.is-browsing-stories .story-media{
    opacity:1;
}

.stories-section.is-browsing-stories .story-trigger:hover,
.stories-section.is-browsing-stories .story-trigger.is-active,
.stories-section.is-browsing-stories .story-media:hover,
.stories-section.is-browsing-stories .story-media.is-active{
    opacity:1;
}

.strip-item img{
    filter:saturate(.82) contrast(1.04);
    transition:filter .45s ease, transform 2.2s ease;
    border-radius:7px;
}

.strip-item:hover img,
.strip-item.is-active img{
    filter:saturate(1) contrast(1);
    transform:scale(1.018);
}

.cinema-player{
    position:absolute;
    top:96px;
    left:50%;
    width:min(76vw, 1380px);
    aspect-ratio:16 / 9;
    background:#000;
    opacity:0;
    pointer-events:none;
    transform:translateX(-50%) scale(.98);
    transition:opacity .45s ease, transform .45s ease;
    z-index:45;
}

.cinema-player iframe{
    width:100%;
    height:100%;
    border:0;
}

.stories-section.is-cinema .cinema-player{
    opacity:1;
    pointer-events:auto;
    transform:translateX(-50%) scale(1);
}

.stories-intro{
    position:absolute;
    top:66px;
    left:50%;
    width:calc(100% - 68px);
    max-width:1840px;
    height:calc(100vh - 330px);
    min-height:430px;
    max-height:720px;
    background:#fff;
    opacity:0;
    pointer-events:none;
    transform:translateX(-50%) scale(.98);
    transition:opacity 1.4s ease, transform 1.4s ease;
    z-index:40;
}

.stories-intro img{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
}

.stories-section.is-intro-cinema::after{
    inset:0;
    opacity:1;
}

.stories-section.is-intro-cinema .stories-intro{
    opacity:1;
    transform:translateX(-50%) scale(1);
}

.stories-section.is-intro-ending .stories-intro{
    opacity:0;
    transform:translateX(-50%) scale(1.01);
}

.strip-item span{
    display:none;
}

.strip-item::after{
    display:none;
}

.strip-item:first-child img{
    object-position:center 34%;
}

.strip-item:nth-child(2) img{
    object-position:center center;
}

.strip-item:nth-child(3) img{
    object-position:center top;
}

.strip-item:nth-child(4) img{
    object-position:center center;
}

@media (max-width:1100px){
    .stories-section{
        padding:18px;
        height:auto;
        overflow:visible;
    }

    .stories-header{
        height:64px;
    }

    .stories-nav{
        gap:18px;
        font-size:.62rem;
    }

    .stories-cover{
        height:auto;
        min-height:0;
        max-height:none;
        grid-template-columns:1fr;
        grid-template-rows:auto;
    }

    .stories-copy,
    .cover-image.amazonas{
        grid-column:auto;
        grid-row:auto;
    }

    .stories-copy{
        padding:34px 0 22px;
        max-width:720px;
        min-height:420px;
    }

    .set-graphic-filmset{
        left:30%;
        width:min(68%, 420px);
    }

    .set-graphic-left{
        width:min(22%, 120px);
    }

    .set-graphic-right{
        width:min(23%, 130px);
    }

    .stories-copy h2{
        font-size:clamp(3.2rem, 13vw, 5.8rem);
    }

    .cover-image{
        height:320px;
    }

    .cover-image.amazonas{
        height:440px;
    }

    .cinema-player{
        top:92px;
        width:calc(100% - 36px);
    }

    .stories-intro{
        top:92px;
        width:calc(100% - 36px);
        height:auto;
        min-height:0;
        max-height:none;
    }

    .story-strip{
        max-height:none;
        overflow:visible;
        grid-template-columns:1fr 1fr;
    }

    .strip-item{
        height:auto;
    }

    .logo-title{
        width:90vw;
    }

    .black-title h2{
        font-size:3rem;
    }
}

.contact-page{
    min-height:100vh;
    background:#11100f;
    color:#f4efe7;
    font-family:'Inter', Arial, Helvetica, sans-serif;
}

.contact-layout{
    min-height:100vh;
    padding:20px 34px 42px;
    overflow:hidden;
    position:relative;
}

.contact-layout::before{
    content:'';
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg, rgba(244,239,231,.055) 1px, transparent 1px),
        linear-gradient(180deg, rgba(244,239,231,.04) 1px, transparent 1px);
    background-size:14.285vw 100%, 100% 14.285vh;
    pointer-events:none;
}

.contact-header{
    position:relative;
    z-index:5;
}

.contact-logo img{
    width:210px;
}

.contact-nav a{
    color:#c9a46a;
}

.contact-hero{
    max-width:1840px;
    min-height:50vh;
    margin:26px auto 0;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:46px;
    align-items:center;
    position:relative;
    z-index:2;
}

.contact-title{
    align-self:center;
}

.ghost-set-illustration{
    opacity:.2;
    pointer-events:none;
    user-select:none;
    filter:invert(1);
}

.contact-hero-set{
    grid-column:2;
    grid-row:1 / 3;
    width:min(1048px, 156%);
    justify-self:center;
    align-self:center;
}

.contact-title span,
.contact-card span{
    color:#c9a46a;
    display:block;
    font-size:.66rem;
    font-weight:800;
    letter-spacing:.2em;
    margin-bottom:14px;
    text-transform:uppercase;
}

.contact-title h1{
    font-family:'Playfair Display', 'Cormorant Garamond', serif;
    font-size:clamp(5.6rem, 11.2vw, 13.2rem);
    font-weight:400;
    letter-spacing:0;
    line-height:.84;
}

.contact-image{
    overflow:hidden;
    background:#f4efe7;
}

.contact-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    filter:grayscale(1) contrast(1.08);
}

.contact-image-primary{
    height:min(70vh, 760px);
}

.contact-image-primary img{
    object-position:66% center;
}

.contact-intro{
    grid-column:1;
    max-width:560px;
    border-top:1px solid rgba(244,239,231,.32);
    padding-top:18px;
}

.contact-intro p{
    font-family:'Cormorant Garamond', serif;
    font-size:clamp(1.55rem, 2.05vw, 2.65rem);
    line-height:1.06;
}

.contact-grid{
    max-width:1840px;
    margin:26px auto 0;
    display:grid;
    grid-template-columns:1.15fr 1fr 1fr;
    gap:16px;
    position:relative;
    z-index:2;
}

.contact-card{
    min-height:220px;
    padding:24px;
    border:1px solid rgba(244,239,231,.28);
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
}

.contact-card-main{
    background:transparent;
    color:#f4efe7;
    justify-content:center;
}

.contact-card h2{
    font-family:'Playfair Display', 'Cormorant Garamond', serif;
    font-size:clamp(2.25rem, 3.45vw, 4.45rem);
    font-weight:400;
    line-height:.95;
    margin-bottom:18px;
    color:#c9a46a;
}

.contact-card p,
.contact-card a{
    color:inherit;
    font-size:clamp(.9rem, .98vw, 1.08rem);
    line-height:1.42;
    text-decoration:none;
}

.contact-card a + a{
    margin-top:8px;
}

.contact-card a:hover{
    color:#c9a46a;
}

.contact-card-main a:hover{
    color:#c9a46a;
}

.contact-locations{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}

.contact-locations p{
    font-size:clamp(.9rem, .98vw, 1.08rem);
    line-height:1.42;
}

.contact-editorial{
    max-width:1840px;
    min-height:78vh;
    margin:110px auto 0;
    display:grid;
    grid-template-columns:1fr;
    gap:44px;
    align-items:center;
    position:relative;
    z-index:2;
}

.contact-editorial h2{
    font-family:'Playfair Display', 'Cormorant Garamond', serif;
    font-size:clamp(5rem, 9.4vw, 12.6rem);
    font-weight:400;
    line-height:.9;
    max-width:1320px;
}

.contact-editorial p{
    max-width:680px;
    margin-top:34px;
    color:#d9cdbb;
    font-size:clamp(1.02rem, 1.15vw, 1.24rem);
    line-height:1.7;
}

.contact-image-secondary{
    height:min(68vh, 740px);
}

.contact-image-secondary img{
    object-position:center center;
}

@media (max-width:1100px){
    .contact-layout{
        padding:18px;
    }

    .contact-hero,
    .contact-grid,
    .contact-editorial{
        grid-template-columns:1fr;
    }

    .contact-hero-set{
        grid-column:auto;
        grid-row:auto;
        width:min(520px, 100%);
        margin:12px auto 0;
    }

    .contact-image-primary,
    .contact-image-secondary{
        height:auto;
    }

    .contact-grid{
        gap:12px;
    }

    .contact-card{
        min-height:260px;
    }

}

@media (max-height:820px) and (min-width:1101px){
    .stories-copy h2{
        font-size:clamp(3rem, 4.25vw, 5.8rem);
        line-height:.94;
    }

    .stories-copy span{
        margin-bottom:12px;
    }

    .stories-copy p{
        margin-top:14px;
    }

    .stories-copy a{
        margin-top:16px;
    }
}

.page-shell{
    background:#fff;
    color:#111;
}

.simple-page{
    min-height:100vh;
    padding:42px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

.simple-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    width:100%;
}

.page-shell .simple-header,
.about-page .simple-header,
.contact-page .simple-header{
    position:sticky;
    top:0;
    z-index:100;
    padding:0 0 14px;
}

.about-page .simple-header{
    background:linear-gradient(#f7f6f2 72%, rgba(247,246,242,0));
}

.page-shell .simple-header{
    background:linear-gradient(#fff 72%, rgba(255,255,255,0));
}

.contact-page .simple-header{
    background:linear-gradient(#11100f 72%, rgba(17,16,15,0));
}

.simple-logo img{
    width:220px;
    max-width:50vw;
    display:block;
}

.simple-page section{
    max-width:980px;
}

.simple-page span{
    color:#0087a8;
    display:block;
    font-family:Arial, Helvetica, sans-serif;
    font-size:.78rem;
    font-weight:700;
    letter-spacing:.12em;
    margin-bottom:18px;
    text-transform:uppercase;
}

.simple-page h1{
    font-size:clamp(4rem, 9vw, 9rem);
    font-weight:400;
    line-height:.9;
}

.simple-page p{
    font-family:Arial, Helvetica, sans-serif;
    font-size:1.1rem;
    line-height:1.5;
    margin-top:28px;
}

.about-page{
    background:#f7f6f2;
    color:#111;
    font-family:'Inter', Arial, Helvetica, sans-serif;
}

.about-layout{
    min-height:100vh;
    padding:22px 34px 64px;
    overflow:hidden;
    position:relative;
}

.about-header{
    position:relative;
    z-index:20;
}

.about-hero{
    min-height:calc(92vh - 86px);
    display:grid;
    grid-template-columns:minmax(0, 1fr);
    align-items:start;
    max-width:1840px;
    margin:0 auto;
    position:relative;
}

.about-set{
    position:absolute;
    pointer-events:none;
    user-select:none;
    opacity:.72;
    z-index:0;
}

.about-set-top{
    width:min(760px, 48vw);
    top:clamp(180px, 17vw, 260px);
    left:50%;
    transform:translateX(-50%);
    opacity:.5;
}

.about-hero-copy{
    position:relative;
    z-index:4;
    width:100%;
    max-width:none;
    padding:0 0 8vh;
    text-align:center;
}

.about-hero-copy span,
.about-manifesto span,
.about-person-copy span,
.about-closing span{
    color:#0087a8;
    display:block;
    font-family:'Inter', Arial, Helvetica, sans-serif;
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.16em;
    margin-bottom:18px;
    text-transform:uppercase;
}

.about-hero-wordmark{
    display:block;
    width:min(1180px, 86vw);
    height:auto;
    margin:0 auto;
}

.about-hero-copy p{
    font-family:'Cormorant Garamond', serif;
    font-size:clamp(1.35rem, 1.75vw, 2.1rem);
    line-height:1.18;
    max-width:720px;
    margin:clamp(260px, 25vw, 370px) auto 0;
    padding:0;
    text-align:left;
}

.about-feature-image img,
.about-wide-image img,
.about-image-row img,
.about-camera{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
    filter:grayscale(1) contrast(1.08);
}

.about-manifesto{
    max-width:1840px;
    margin:92px auto 0;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:46px;
    position:relative;
    padding:80px 0 88px;
    border-top:1px solid rgba(0,0,0,.12);
    border-bottom:1px solid rgba(0,0,0,.12);
}

.about-light-left{
    width:min(360px, 26vw);
    left:-7%;
    bottom:-12%;
    opacity:.5;
}

.about-manifesto h2,
.about-closing h2{
    font-family:'Playfair Display', 'Cormorant Garamond', serif;
    font-size:clamp(3.4rem, 6vw, 8.2rem);
    font-weight:400;
    line-height:1.02;
}

.about-manifesto-text{
    display:grid;
    gap:26px;
    align-self:end;
}

.about-manifesto-text p,
.about-person-copy p,
.about-closing p{
    font-family:'Inter', Arial, Helvetica, sans-serif;
    font-size:clamp(1.02rem, 1.06vw, 1.18rem);
    line-height:1.68;
}

.about-team{
    max-width:1840px;
    margin:104px auto 0;
    display:grid;
    gap:170px;
}

.about-person{
    display:grid;
    grid-template-columns:repeat(12, minmax(0, 1fr));
    grid-template-rows:auto auto;
    gap:44px 46px;
    align-items:start;
    max-width:1840px;
}

.about-person-nathalie{
    grid-template-columns:minmax(0, 1.05fr) minmax(420px, .95fr);
    gap:56px;
}

.about-person-nathalie .about-feature-image{
    grid-column:1;
    grid-row:1;
}

.about-person-nathalie .about-person-copy{
    grid-column:2;
    grid-row:1;
    padding-top:26px;
}

.about-person-nathalie .about-wide-image{
    grid-column:1 / -1;
    grid-row:2;
    margin-top:10px;
}

.about-person-nathalie .about-person-copy h2{
    font-family:'Playfair Display', 'Cormorant Garamond', serif;
    font-size:clamp(4.8rem, 7.4vw, 9rem);
    font-weight:400;
    line-height:1.12;
    margin-bottom:36px;
}

.about-person-alejandro{
    display:grid;
    grid-template-columns:repeat(12, minmax(0, 1fr));
    grid-template-rows:auto auto;
    gap:44px 46px;
}

.about-person-alejandro .about-person-heading{
    grid-column:1 / 7;
}

.about-person-alejandro .about-person-copy-main{
    grid-column:1 / 8;
    padding-top:clamp(270px, 20vw, 390px);
}

.about-person-alejandro .about-person-copy-secondary{
    grid-column:8 / 13;
    padding-top:0;
}

.about-person-heading{
    position:relative;
    z-index:2;
    grid-column:1 / 7;
    grid-row:1;
    padding-top:0;
}

.about-person-heading h2{
    font-family:'Playfair Display', 'Cormorant Garamond', serif;
    font-size:clamp(4.8rem, 7.4vw, 9rem);
    font-weight:400;
    line-height:1.12;
    margin-bottom:0;
}

.about-person-copy{
    position:relative;
    top:auto;
    max-width:none;
    z-index:2;
}

.about-person-copy-main{
    grid-column:1 / 8;
    grid-row:1;
    padding-top:clamp(270px, 20vw, 390px);
}

.about-person-copy-secondary{
    grid-column:8 / 13;
    grid-row:2;
    align-self:start;
    padding-top:0;
}

.about-person-copy p + p{
    margin-top:22px;
}

.about-feature-image,
.about-wide-image{
    overflow:hidden;
    background:transparent;
}

.about-feature-image{
    grid-column:8 / 13;
    grid-row:1;
    align-self:start;
    min-height:0;
    margin:0;
}

.about-person-alejandro .about-feature-image{
    grid-column:8 / 13;
    grid-row:1;
    margin:0;
    overflow:hidden;
}

.about-feature-image img{
    height:auto;
    object-position:center center;
}

.about-feature-image img,
.about-wide-image img,
.about-image-row img{
    transform:scale(1.04);
    transform-origin:center center;
}

.about-person-alejandro .about-feature-image{
    height:min(29vw, 490px);
}

.about-person-alejandro .about-feature-image img{
    width:122%;
    max-width:none;
    height:100%;
    object-fit:cover;
    object-position:left center;
    transform:translateX(-12%);
    transform-origin:center center;
}

.about-wide-image{
    grid-column:1 / 8;
    grid-row:2;
    min-height:0;
    margin:0;
}

.about-wide-image img{
    height:auto;
    object-position:center center;
}

.about-image-row{
    grid-column:1 / 8;
    grid-row:2;
    display:grid;
    grid-template-columns:1.55fr .85fr;
    grid-template-rows:1fr 1fr;
    gap:8px;
    height:min(52vw, 650px);
    margin:0;
    overflow:hidden;
    background:#fff;
}

.about-image-row img{
    width:100%;
    height:100%;
    min-height:0;
    object-fit:cover;
    object-position:center center;
}

.about-image-row img:nth-child(1){
    grid-row:1 / 3;
    object-position:center center;
}

.about-image-row img:nth-child(2){
    object-position:center center;
}

.about-image-row img:nth-child(3){
    object-position:center center;
}

.about-closing{
    max-width:1840px;
    min-height:74vh;
    margin:150px auto 0;
    display:grid;
    grid-template-columns:minmax(0, 1.05fr) minmax(0, .95fr);
    gap:52px;
    align-items:start;
    position:relative;
}

.about-camera{
    width:100%;
    height:min(72vh, 860px);
    aspect-ratio:auto;
    object-fit:cover;
    object-position:68% center;
    transform:none;
    transform-origin:center center;
}

.about-closing h2{
    margin-top:-18px;
    font-size:clamp(5.2rem, 8.4vw, 11.4rem);
    line-height:1.02;
}

.about-closing p{
    max-width:920px;
    margin-top:34px;
    font-size:clamp(1.06rem, 1.16vw, 1.28rem);
}

.about-light-right{
    width:min(440px, 30vw);
    right:-10%;
    bottom:-10%;
    opacity:.5;
}

@media (max-width:1100px){
    .about-layout{
        padding:18px;
    }

    .simple-header,
    .about-header{
        align-items:flex-start;
        gap:28px;
    }

    .about-hero,
    .about-manifesto,
    .about-person,
    .about-person-nathalie,
    .about-person-alejandro,
    .about-closing{
        grid-template-columns:1fr;
        grid-template-rows:auto;
    }

    .about-hero-copy,
    .about-person-heading,
    .about-person-nathalie .about-feature-image,
    .about-person-nathalie .about-person-copy,
    .about-person-nathalie .about-wide-image,
    .about-person-copy-main,
    .about-person-copy-secondary,
    .about-feature-image,
    .about-person-alejandro .about-feature-image,
    .about-wide-image,
    .about-image-row{
        grid-column:auto;
        grid-row:auto;
        align-self:auto;
        justify-self:auto;
    }

    .about-person-copy-main{
        padding-top:0;
    }

    .about-person-alejandro .about-person-copy,
    .about-person-alejandro .about-person-gallery{
        grid-column:auto;
        grid-row:auto;
    }

    .about-person-copy{
        position:relative;
        top:auto;
    }

    .about-image-row{
        grid-template-columns:1fr;
        margin-top:0;
    }

    .about-feature-image,
    .about-person-alejandro .about-feature-image,
    .about-wide-image,
    .about-image-row img{
        height:auto;
        min-height:0;
        width:100%;
        margin:0;
    }

    .about-set-top{
        left:18%;
        width:76vw;
    }

    .about-light-left,
    .about-light-right{
        display:none;
    }
}
