/* APLOMB / Edition 03 — the visual layer for the invitation and inner chapters. */
:root{--edition-ink:#211d19;--edition-clay:#b86c50;--edition-cream:#f0ebe2;--edition-line:#e7ded22c}

/* Light moves with the reader, while the photographic composition remains calm. */
.hero-visual{isolation:isolate}
.hero-visual img{transform:scale(1.045) translate3d(var(--apl-pan-x,0px),var(--apl-pan-y,0px),0);transition:transform .8s var(--ease-out)}
.hero-visual:hover img{transform:scale(1.07) translate3d(var(--apl-pan-x,0px),var(--apl-pan-y,0px),0)}
.hero-visual::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse 65% 65% at var(--apl-hero-x,55%) var(--apl-hero-y,45%),#fff3 0,transparent 72%);mix-blend-mode:soft-light;pointer-events:none}
.hero-visual-top,.hero-visual-label{z-index:2}
.hero-visual::after{z-index:2}
.hero h1 span,.hero h1 em{animation:apl-title-enter 1.25s var(--ease-out) both}
.hero h1 em{animation-delay:.14s}
@keyframes apl-title-enter{from{opacity:0;transform:translateY(.25em);filter:blur(7px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
.look-image{isolation:isolate}
.look-image::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(circle 230px at var(--apl-card-x,50%) var(--apl-card-y,50%),#fff4,transparent 78%);mix-blend-mode:soft-light;opacity:0;transition:opacity .5s;pointer-events:none}
.look-card:hover .look-image::before,.look-card:focus-visible .look-image::before{opacity:1}
.look-card .look-image img{transform:scale(1.025) translate3d(var(--apl-pan-x,0px),var(--apl-pan-y,0px),0)}
.look-card:hover .look-image img{transform:scale(1.075) translate3d(var(--apl-pan-x,0px),var(--apl-pan-y,0px),0)}
.look-image-number,.look-image-action{z-index:2}
.campaign,.atelier-image{overflow:hidden}
@supports(animation-timeline:view()){
  .campaign>img{animation:apl-image-drift linear both;animation-timeline:view();animation-range:entry 0% exit 100%}
  .atelier-image img{animation:apl-image-drift linear both;animation-timeline:view();animation-range:entry 0% exit 100%}
  @keyframes apl-image-drift{from{transform:scale(1.14) translateY(-2.5%)}to{transform:scale(1.14) translateY(2.5%)}}
}
.story-card-image{overflow:hidden}
.story-card-image img{transition:transform 1s var(--ease-out),filter 1s var(--ease-out);filter:saturate(.8)}
.story-card:hover .story-card-image img{transform:scale(1.065);filter:saturate(1)}

/* The homepage lands on a quiet editorial page before the final invitation. */
.closing-v3{display:block;min-height:0;padding-top:35px;padding-bottom:clamp(65px,8vw,150px);background:#e7e1d7}
.closing-v3-top{display:flex;justify-content:space-between;gap:25px;align-items:center;color:#6c665d;font-size:10px;font-weight:600;letter-spacing:.16em}
.closing-v3-body{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.68fr);gap:clamp(35px,8vw,160px);align-items:center;padding:clamp(80px,10vw,180px) 0 95px}
.closing-v3-body>div{align-self:center}
.closing-v3 h2{font-size:clamp(80px,8.2vw,158px);line-height:.78;margin:0 0 55px;max-width:100%;overflow-wrap:normal}
.closing-v3 h2 em{padding-left:.46em}
.closing-v3-body p{max-width:330px;margin:0 0 42px 2px;color:#5d5a53;font-size:15px;line-height:1.8}
.closing-v3 .text-link{display:inline-flex}
.closing-v3 figure{position:relative;margin:0;aspect-ratio:3/4.1;max-height:720px;overflow:hidden;background:#26211e}
.closing-v3 figure::after{content:"";position:absolute;inset:14px;border:1px solid #fff6;pointer-events:none}
.closing-v3 figure img{width:100%;height:100%;object-fit:cover;object-position:center 30%;transition:transform 1.2s var(--ease-out)}
.closing-v3 figure:hover img{transform:scale(1.045)}
.closing-v3 figcaption{position:absolute;bottom:29px;left:30px;color:#f6eee4;font-size:9px;letter-spacing:.2em}
.closing-v3 .closing-index{position:static;text-align:left;display:block;border-top:1px solid #29241e39;padding-top:22px;color:#6e685f;font-size:10px;letter-spacing:.17em}

/* Invitation: portrait, directory and a wordmark sized to the actual viewport. */
.footer-v3{background:var(--edition-ink);color:#efe9df}
.footer-v3-stage{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);min-height:720px;border-bottom:1px solid var(--edition-line)}
.footer-v3-invitation{position:relative;display:flex;flex-direction:column;align-items:start;justify-content:space-between;min-width:0;padding-top:clamp(60px,6vw,110px);padding-bottom:55px;background:radial-gradient(ellipse at 8% 100%,#7a493b35,transparent 50%),var(--edition-ink)}
.footer-v3-invitation::after{content:"";position:absolute;right:clamp(35px,5vw,90px);top:clamp(60px,6vw,110px);height:42px;border-right:1px solid #d5bd9e6a}
.footer-v3-overline,.footer-v3-edition{font-size:10px;font-weight:600;letter-spacing:.21em;color:#c5b4a4}
.footer-v3-spark{font-size:19px;line-height:0;margin-right:17px;color:#d7aa86;vertical-align:middle}
.footer-v3-invitation h2{font-family:var(--serif);font-size:clamp(86px,8.5vw,168px);font-weight:300;line-height:.77;letter-spacing:-.075em;white-space:nowrap;margin:80px 0 70px}
.footer-v3-invitation h2 em{display:inline-block;padding-left:.44em;color:#d2a485;font-weight:300}
.footer-v3-invitation-bottom{width:min(100%,610px);display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,.85fr);gap:clamp(35px,5vw,90px);align-items:end}
.footer-v3-invitation-bottom p{max-width:250px;margin:0;color:#bdb5ab;font-size:14px;line-height:1.8}
.footer-v3-contact{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0 0 18px;border-bottom:1px solid #e8ded4aa;font-size:10px;font-weight:600;letter-spacing:.17em;transition:color .3s,border-color .3s}
.footer-v3-contact span:last-child{font-size:24px;font-weight:300;line-height:.7;transition:transform .4s var(--ease-out)}
.footer-v3-contact:hover{color:#ddb895;border-color:#ddb895}
.footer-v3-contact:hover span:last-child{transform:translate(4px,-4px)}
.footer-v3-edition{position:absolute;right:var(--gutter);bottom:52px;writing-mode:vertical-rl;color:#8a7c70}
.footer-v3-portrait{position:relative;display:block;min-height:720px;overflow:hidden;background:#a9a095}
.footer-v3-portrait::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#17130f32,transparent 35%,#17130f55);pointer-events:none}
.footer-v3-portrait::after{content:"";position:absolute;inset:18px;z-index:2;border:1px solid #fff9;pointer-events:none}
.footer-v3-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 26%;filter:saturate(.75);transition:transform 1.3s var(--ease-out),filter .8s}
.footer-v3-portrait:hover img{transform:scale(1.055);filter:saturate(.94)}
.footer-v3-portrait-mark,.footer-v3-portrait-caption{position:absolute;z-index:3;color:#fff;font-size:10px;letter-spacing:.2em;text-shadow:0 1px 8px #16120e88}
.footer-v3-portrait-mark{top:38px;left:39px}
.footer-v3-portrait-caption{bottom:38px;left:39px;right:39px;display:flex;justify-content:space-between}
.footer-v3-portrait-caption span{font-size:22px;line-height:.7;transition:transform .4s var(--ease-out)}
.footer-v3-portrait:hover .footer-v3-portrait-caption span{transform:translate(4px,-4px)}
.footer-v3-directory{display:grid;grid-template-columns:1.1fr 1.4fr .7fr;gap:clamp(35px,6vw,110px);padding-top:66px;padding-bottom:66px;border-bottom:1px solid var(--edition-line)}
.footer-v3-directory-intro>span,.footer-v3-address>span{font-size:10px;font-weight:600;letter-spacing:.18em;color:#cbb19a}
.footer-v3-directory-intro p{max-width:260px;margin:34px 0 0;font-family:var(--serif);font-size:clamp(32px,3vw,52px);line-height:1.04;letter-spacing:-.03em}
.footer-v3-nav{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.footer-v3-nav a{display:grid;grid-template-columns:28px 1fr 14px;align-items:baseline;gap:13px;padding:15px 0;border-bottom:1px solid var(--edition-line);font-size:11px;font-weight:600;letter-spacing:.1em;transition:color .3s,padding-left .3s}
.footer-v3-nav a:hover{color:#dab18c;padding-left:5px}
.footer-v3-nav a span{font-size:9px;color:#9f8b78}
.footer-v3-nav a b{font-size:17px;font-weight:300}
.footer-v3-address{display:flex;flex-direction:column;align-items:start;gap:15px}
.footer-v3-address>span{margin-bottom:15px}
.footer-v3-address a{max-width:100%;overflow-wrap:anywhere;color:#c8c1b6;font-size:12px;line-height:1.5}
.footer-v3-address a:hover{color:#edc09b}
.footer-v3-signature{display:flex;align-items:start;justify-content:center;gap:.2vw;margin:0;padding-top:28px;padding-bottom:25px;white-space:nowrap;overflow:hidden;user-select:none}
.footer-v3-signature span{font-family:var(--serif);font-weight:300;font-size:clamp(135px,23.5vw,490px);line-height:.72;letter-spacing:-.095em}
.footer-v3-signature sup{font-family:var(--sans);font-size:clamp(11px,1.3vw,22px);line-height:1;margin-top:.3em}
.footer-v3-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--edition-line);padding-top:27px;padding-bottom:30px;color:#a99f94;font-size:10px;font-weight:600;letter-spacing:.14em}
.footer-v3-bottom a{color:#e5d7c8;white-space:nowrap}
.footer-v3-bottom a:hover{color:#eab993}

/* Collection and look detail chapters. */
.archive-editorial{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:clamp(45px,9vw,180px);align-items:center;padding-top:clamp(80px,10vw,170px);padding-bottom:clamp(80px,10vw,170px);background:#e9e3d9}
.archive-editorial figure{position:relative;margin:0;aspect-ratio:3/3.5;overflow:hidden;background:#b7b1a7}
.archive-editorial figure img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease-out)}
.archive-editorial figure:hover img{transform:scale(1.04)}
.archive-editorial figcaption{position:absolute;left:20px;bottom:20px;color:white;font-size:9px;letter-spacing:.15em;text-shadow:0 1px 8px #0008}
.archive-editorial h2,.look-chapter h2,.journal-interlude h2{font-family:var(--serif);font-weight:300;font-size:clamp(76px,7vw,138px);line-height:.79;letter-spacing:-.065em;margin:35px 0 45px}
.archive-editorial p,.look-chapter-copy>p,.journal-interlude p{max-width:470px;color:#615d56;font-size:15px;line-height:1.85;margin:0 0 36px}
.single-look-image-label{position:absolute;left:32px;bottom:31px;color:#fff;font-size:10px;font-weight:600;letter-spacing:.17em;text-shadow:0 1px 12px #0009}
.look-chapter{padding-top:40px;padding-bottom:clamp(100px,12vw,200px);background:#e9e4db}
.look-chapter-heading{display:flex;justify-content:space-between;border-top:1px solid #2520193c;padding-top:19px;font-size:10px;font-weight:600;letter-spacing:.17em;color:#5d574f}
.look-chapter-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,.82fr);gap:clamp(60px,9vw,175px);align-items:center;padding-top:80px}
.look-chapter figure{position:relative;margin:0;aspect-ratio:4/4.7;overflow:hidden;background:#b6ab9e}
.look-chapter figure img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease-out)}
.look-chapter figure:hover img{transform:scale(1.045)}
.look-chapter figcaption{position:absolute;bottom:20px;left:23px;color:#fff;font-size:9px;letter-spacing:.19em;text-shadow:0 1px 9px #000a}
.look-chapter h2{margin-bottom:46px}
.look-chapter-facts{margin:60px 0 45px;border-top:1px solid #2a241e38}
.look-chapter-facts>div{display:grid;grid-template-columns:40% 1fr;gap:15px;align-items:baseline;padding:18px 0;border-bottom:1px solid #2a241e38}
.look-chapter-facts span{font-size:10px;font-weight:600;letter-spacing:.13em;color:#8c5845}
.look-chapter-facts p{margin:0;color:#423e37;font-family:var(--serif);font-size:22px;line-height:1.1}
.look-statement-v3{background:#aa644d}
.look-statement-v3 p{max-width:930px}

/* Journal feels like a magazine, with a pause and a route to the next story. */
.article-endnote{margin-top:75px;padding:35px 0 0;border-top:1px solid var(--line)}
.article-endnote span{font-size:10px;font-weight:600;letter-spacing:.17em;color:var(--accent)}
.article-endnote p{max-width:430px;font-family:var(--serif);font-size:29px;line-height:1.18;letter-spacing:-.02em}
.journal-interlude{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,9vw,160px);align-items:center;padding-top:115px;padding-bottom:120px;background:#e8e1d6}
.journal-interlude figure{position:relative;margin:0;aspect-ratio:4/3.8;overflow:hidden;background:#654832}
.journal-interlude figure img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease-out)}
.journal-interlude figure:hover img{transform:scale(1.045)}
.journal-interlude figcaption{position:absolute;bottom:21px;left:23px;color:#fff;font-size:9px;letter-spacing:.17em}
.journal-continue{padding-top:110px;padding-bottom:140px}
.journal-continue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(25px,5vw,90px);margin-top:65px}
.journal-continue-image{aspect-ratio:4/3.7;overflow:hidden;background:#d5cfc5}
.journal-continue-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.8);transition:transform .9s var(--ease-out),filter .9s}
.journal-continue-grid a:hover img{transform:scale(1.055);filter:saturate(1)}
.journal-continue-grid a>span{display:block;margin:22px 0 13px;color:#976247;font-size:10px;font-weight:600;letter-spacing:.16em}
.journal-continue h3{font-family:var(--serif);font-size:clamp(45px,4.4vw,80px);font-weight:300;line-height:.95;letter-spacing:-.045em;margin:0 0 20px}
.journal-continue-grid p{max-width:420px;color:#656159;font-size:13px;line-height:1.7}
.maison-process{padding-top:120px;padding-bottom:135px;background:#eae5dc}
.maison-process-heading{display:flex;justify-content:space-between;gap:25px;padding-top:18px;border-top:1px solid #2a241e45;font-size:10px;font-weight:600;letter-spacing:.17em}
.maison-process h2{font-family:var(--serif);font-size:clamp(70px,7vw,128px);font-weight:300;line-height:.84;letter-spacing:-.065em;margin:80px 0 100px}
.maison-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(22px,4vw,70px)}
.maison-process-grid>div{border-top:1px solid #2a241e48;padding-top:20px}
.maison-process-grid span{font-size:10px;font-weight:600;letter-spacing:.17em;color:#9c644f}
.maison-process-grid h3{font-family:var(--serif);font-size:clamp(55px,5vw,86px);font-weight:300;letter-spacing:-.06em;margin:45px 0 20px}
.maison-process-grid p{max-width:310px;color:#625d54;font-size:14px;line-height:1.8}

/* A compact editorial pointer appears only over links with imagery. */
.apl-view-cursor{position:fixed;left:0;top:0;z-index:9999;width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:#f1ebe1;color:#201b17;box-shadow:0 12px 35px #110c092a;font-size:10px;font-weight:700;letter-spacing:.16em;pointer-events:none;opacity:0;transform:translate3d(-100px,-100px,0) scale(.7);transition:opacity .2s,scale .25s var(--ease-out)}
.apl-view-cursor.is-active{opacity:1;scale:1}

@media(max-width:1100px){
  .footer-v3-invitation h2{font-size:clamp(76px,8.5vw,112px)}
  .footer-v3-stage,.footer-v3-portrait{min-height:640px}
  .footer-v3-directory{grid-template-columns:.8fr 1.4fr;gap:45px}
  .footer-v3-address{grid-column:2;flex-direction:row;flex-wrap:wrap;align-items:baseline}
  .footer-v3-address>span{width:100%;margin-bottom:0}
  .closing-v3 h2{font-size:clamp(65px,8.1vw,105px)}
}
@media(max-width:800px){
  .footer-v3-stage{grid-template-columns:1fr}
  .footer-v3-invitation{min-height:590px;padding-top:70px;padding-bottom:60px}
  .footer-v3-invitation h2{font-size:clamp(95px,14vw,150px)}
  .footer-v3-portrait{min-height:520px;max-height:700px}
  .footer-v3-directory{grid-template-columns:1fr 1.4fr}
  .footer-v3-signature span{font-size:23vw}
  .closing-v3-body{gap:38px}
  .closing-v3 h2{font-size:clamp(65px,8vw,90px)}
  .look-chapter-grid{gap:50px}
  .look-chapter h2,.journal-interlude h2{font-size:clamp(65px,8vw,95px)}
}
@media(max-width:700px){
  .hero-visual img,.hero-visual:hover img{transform:scale(1.025)}
  .closing-v3{padding-top:28px;padding-bottom:85px}
  .closing-v3-top{font-size:9px}
  .closing-v3-body{display:flex;flex-direction:column;align-items:stretch;gap:55px;padding:90px 0 65px}
  .closing-v3 h2{font-size:clamp(80px,13vw,125px);margin-bottom:35px}
  .closing-v3 figure{width:min(78%,430px);align-self:flex-end;aspect-ratio:3/3.7}
  .closing-v3-body p{font-size:14px}
  .footer-v3-invitation{min-height:570px}
  .footer-v3-invitation h2{font-size:clamp(83px,15vw,130px);margin:55px 0}
  .footer-v3-invitation-bottom{grid-template-columns:1fr;gap:35px;padding-right:50px}
  .footer-v3-invitation-bottom p{max-width:330px}
  .footer-v3-edition{right:var(--gutter)}
  .footer-v3-portrait{min-height:440px;height:70vw}
  .footer-v3-directory{display:grid;grid-template-columns:1fr;padding-top:65px;padding-bottom:65px;gap:45px}
  .footer-v3-directory-intro p{margin-top:20px;font-size:46px}
  .footer-v3-address{grid-column:auto;display:flex}
  .footer-v3-signature{padding-top:25px;padding-bottom:24px}
  .footer-v3-signature span{font-size:23vw}
  .footer-v3-bottom{flex-wrap:wrap;font-size:9px}
  .footer-v3-bottom span:nth-child(2){order:3;width:100%}
  .archive-editorial,.look-chapter-grid,.journal-interlude{grid-template-columns:1fr;gap:55px}
  .archive-editorial figure{max-width:500px}
  .archive-editorial h2,.look-chapter h2,.journal-interlude h2{font-size:clamp(72px,12vw,110px)}
  .look-chapter-grid{padding-top:45px}
  .look-chapter figure{max-width:500px}
  .look-chapter-copy{padding-bottom:10px}
  .journal-interlude{padding-top:85px;padding-bottom:95px}
  .journal-continue{padding-top:80px;padding-bottom:100px}
  .contact-aside-image{display:block;width:min(100%,440px);height:480px;aspect-ratio:auto;margin-top:48px}
  .maison-process{padding-top:85px;padding-bottom:95px}
  .maison-process h2{margin:60px 0}
  .maison-process-grid{grid-template-columns:1fr;gap:25px}
  .maison-process-grid h3{margin:20px 0 10px}
}
@media(max-width:480px){
  .closing-v3-top>span:last-child{display:none}
  .closing-v3 h2{font-size:clamp(70px,14vw,95px)}
  .closing-v3 figure{width:86%}
  .footer-v3-invitation{min-height:510px}
  .footer-v3-invitation h2{font-size:clamp(62px,14vw,90px);white-space:normal;line-height:.84}
  .footer-v3-portrait{min-height:360px;height:110vw}
  .footer-v3-nav{grid-template-columns:1fr}
  .footer-v3-directory-intro p{font-size:40px}
  .footer-v3-bottom{gap:13px}
  .look-chapter-heading>span:last-child,.maison-process-heading>span:last-child{display:none}
  .look-chapter-facts>div{grid-template-columns:1fr;gap:7px}
  .journal-continue-grid{grid-template-columns:1fr;gap:50px}
  .journal-continue h3{font-size:54px}
  .contact-aside-image{height:105vw;max-height:480px}
}
@media(prefers-reduced-motion:reduce){
  .hero h1 span,.hero h1 em,.campaign>img,.atelier-image img{animation:none!important}
  .hero-visual img,.hero-visual:hover img,.look-card .look-image img,.look-card:hover .look-image img{transform:none;transition:none}
  .apl-view-cursor{display:none}
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation-duration:.01ms!important}
}
