/* v1.6: a source-backed project catalog and substantial case stories.
   Uses the established Manrope / Georgia typography and paper / ink palette. */
.catalog-page,.catalog-case{background:var(--paper,#f4f0e8);color:var(--ink,#251c29)}
.catalog-page .back-link,.catalog-case .back-link,.case-hero .back-link{color:#745b52;min-height:44px;line-height:1.6}
.catalog-intro,.catalog-case-hero,.catalog-case-story,.catalog-mechanic,.catalog-takeaway,.catalog-references,.catalog-case-next,.catalog-enquiry{padding-left:var(--pad,64px);padding-right:var(--pad,64px)}
.catalog-intro{padding-top:64px;padding-bottom:46px}
.catalog-intro>.back-link{display:inline-block;margin-bottom:40px}
.catalog-intro h1{font-size:clamp(54px,6.2vw,90px);line-height:1.05;letter-spacing:-.045em;margin:20px 0 24px;max-width:900px;font-weight:500}
.catalog-intro h1 em,.catalog-case h1 em,.catalog-enquiry h2 em,.catalog-mechanic h2 em,.catalog-case-next h2 em{font-family:Georgia,serif;font-weight:400;color:#a4313c}
.catalog-intro>.lead{font-size:19px;line-height:1.75;max-width:750px;color:#65596a}
.catalog-intro-bottom{display:flex;justify-content:space-between;align-items:center;gap:32px;border-top:1px solid #d7ccc7;margin-top:44px;padding-top:22px;font-size:14px;color:#6d5e69}
.catalog-intro-bottom p{margin:0}.catalog-intro-bottom span{white-space:nowrap}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0 var(--pad,64px) 90px}
.catalog-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;border:1px solid #ded4cb;border-radius:2px;background:#f9f5ef;overflow:hidden;transition:transform .22s ease,border-color .22s ease}
.catalog-card:hover{transform:translateY(-4px);border-color:#a4313c}
.catalog-card:focus-visible,.catalog-reference-link:focus-visible,.catalog-next-project:focus-visible,.catalog-references summary:focus-visible{outline:3px solid #a4313c;outline-offset:5px}
.catalog-card-featured{grid-column:span 3;display:grid;grid-template-columns:1.15fr 1fr;min-height:350px}
.catalog-card-featured .catalog-card-copy{padding:42px;justify-content:center}.catalog-card-featured .catalog-visual{height:100%;min-height:350px;aspect-ratio:auto}
.catalog-card-featured .catalog-card-copy h2{font-size:clamp(32px,3.5vw,48px)}
.catalog-card-copy{display:flex;flex-direction:column;padding:28px;flex:1;min-width:0}
.catalog-card-brand{margin:0 0 24px!important;font-size:14px!important;font-weight:700;color:#352434!important;display:flex;justify-content:space-between;gap:16px;line-height:1.5!important}
.catalog-card-brand>span{font-size:22px;color:#a4313c}
.catalog-card-copy h2{font-size:27px;line-height:1.17;letter-spacing:-.035em;margin:0 0 16px;font-weight:500}
.catalog-card-copy>p{font-size:15px;line-height:1.7;color:#6d5b62;margin:0 0 24px}
.catalog-card-formats{font-size:12px;line-height:1.8;color:#765e66;border-top:1px solid #e0d5ce;padding-top:16px;margin-top:auto}
.catalog-visual{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;flex-direction:column;aspect-ratio:1.05;overflow:hidden;min-width:0;background:#eee4d8}
.catalog-visual img{display:block;max-width:100%;object-fit:contain}
.catalog-visual .catalog-art-label{position:absolute;top:24px;left:26px;right:26px;font-size:11px;line-height:1.5;font-weight:700;letter-spacing:.08em;text-align:left;z-index:2}
.catalog-visual .catalog-visual-note{font-size:13px;line-height:1.6;position:absolute;bottom:24px;left:26px;right:26px;z-index:2}
.catalog-visual-compact .catalog-art-label{top:18px;left:20px;right:20px;font-size:10px}
.catalog-visual-compact .catalog-visual-note{bottom:18px;left:20px;right:20px;font-size:11px}
.catalog-source-window{background-image:var(--source);background-repeat:no-repeat;flex-shrink:0;box-shadow:0 18px 36px #25172c20;position:relative;width:78%;margin-top:0;border-radius:3px}
.catalog-visual-kfc{background:#f3e5cb;color:#713718}
.catalog-visual-kfc>img{height:100%;width:100%;z-index:1;object-fit:contain}
.catalog-visual-word{position:absolute;left:32px;top:35px;font-size:clamp(50px,6vw,100px);line-height:.9;letter-spacing:-.075em;opacity:.35;font-weight:800}
.catalog-visual-mcdonalds{background:#e7c593}
.catalog-visual-mcdonalds>img{width:100%;height:100%;object-fit:cover}
.catalog-visual-paypal{background:#003d75;padding:22px}
.catalog-visual-paypal>img{width:100%;border-radius:3px;box-shadow:0 10px 32px #001a3a77}
.catalog-visual-sony{background:#dad9d4;flex-direction:row;gap:12px;padding:20px}
.catalog-visual-sony>img{width:47%;max-height:230px;object-fit:contain}
.catalog-visual-old-spice{background:linear-gradient(160deg,#702324,#2d1820);color:#f8e0c2}
.catalog-visual-old-spice .catalog-source-window{aspect-ratio:555/495;background-size:288.29% 181.82%;background-position:29.665% 16.05%}
.catalog-visual-bud{background:linear-gradient(160deg,#b91c27,#761127);color:#fff1e5}
.catalog-visual-bud .catalog-source-window{aspect-ratio:504/290;background-size:317.46% 310.34%;background-position:23.72% 17.54%}
.catalog-visual-efes{background:linear-gradient(160deg,#175e80,#082e47);color:#fff1c4}
.catalog-visual-efes .catalog-source-window{aspect-ratio:480/264;background-size:333.33% 340.91%;background-position:22.14% 86.48%}
.catalog-visual-wwf{background:#c7e7dc;color:#124d3d}
.catalog-visual-wwf .catalog-source-window{aspect-ratio:788/295;background-size:203.045% 305.085%;background-position:5.665% 51.24%;box-shadow:0 18px 36px #003a2220}
.catalog-visual-mega{background:#ebedce;color:#435029}
.catalog-visual-mega>img{width:78%;height:auto;box-shadow:0 18px 36px #25172c20}
.catalog-visual-mega .catalog-source-window{aspect-ratio:755/365;background-size:211.92% 246.58%;background-position:7.396% 14.205%}
.catalog-visual-marlboro{background:linear-gradient(155deg,#fff,#e2e5e9);color:#3c4a59}
.catalog-visual-marlboro .catalog-source-window{width:64%;aspect-ratio:1;background-size:218.67% 171.35%;background-position:87.335% 66.4%;border-radius:50%;box-shadow:0 15px 35px #1825361a;margin-top:10px}
.catalog-visual-danone{background:linear-gradient(145deg,#eef4cc,#e0edd3);color:#466737}
.catalog-visual-danone>img{width:300px;max-width:80%;height:auto;margin-top:18px;filter:drop-shadow(0 18px 20px #68864c26)}
.catalog-enquiry{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:30px;padding-top:65px;padding-bottom:75px;border-top:1px solid #d8ccc4}
.catalog-enquiry>.eyebrow{width:100%;margin:0}
.catalog-enquiry h2{font-size:clamp(36px,4.5vw,64px);line-height:1.08;letter-spacing:-.04em;font-weight:500;margin:0}
.catalog-enquiry .button,.catalog-case-next .button{background:#a4313c;color:#fff}
.catalog-case-hero{padding-top:46px;padding-bottom:66px}
.catalog-case-hero>.back-link{display:inline-block;margin-bottom:38px}
.catalog-case-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:55px}
.catalog-case-intro>.eyebrow{font-size:12px;letter-spacing:.07em;line-height:1.7;max-width:560px}
.catalog-case-intro h1{font-size:clamp(46px,4.75vw,68px);line-height:1.08;letter-spacing:-.045em;font-weight:500;margin:24px 0}
.catalog-case-intro>.lead{font-size:17px;line-height:1.8;color:#6d5c63;max-width:560px}
.catalog-case-hero .catalog-visual{border-radius:3px;min-height:430px}
.catalog-case-meta{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:30px 0;border-top:1px solid #d8cbc4;padding-top:20px}
.catalog-case-meta dt{font-size:11px;font-weight:700;letter-spacing:.07em;line-height:1.6;margin-bottom:8px;color:#8c6b68}
.catalog-case-meta dd{font-size:14px;line-height:1.7;margin:0;color:#59464c}
.catalog-reference-link{display:inline-flex;gap:24px;align-items:center;font-size:15px;line-height:1.5;text-decoration:none;border-bottom:1px solid #a4313c;padding-bottom:7px;color:#6d2631}
.catalog-reference-link>span{font-size:23px}
.catalog-case-story{border-top:1px solid #d8ccc4;padding-top:54px;padding-bottom:60px}
.catalog-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:46px;margin-top:35px}
.catalog-story-number{display:block;border-top:2px solid #aa4850;padding-top:13px;color:#a4313c;font-size:12px;font-weight:700}
.catalog-story-grid h2{font-size:29px;line-height:1.2;font-weight:500;letter-spacing:-.035em;margin:24px 0 18px}
.catalog-story-grid p{font-size:16px;line-height:1.85;color:#6e5c63;margin:0}
.catalog-mechanic{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#241822;color:#f3e4d8;padding-top:62px;padding-bottom:62px}
.catalog-mechanic .eyebrow{color:#ce928a}
.catalog-mechanic h2{font-size:clamp(36px,4vw,55px);line-height:1.1;letter-spacing:-.04em;font-weight:500;margin:24px 0}
.catalog-mechanic h2 em{color:#f3b791}
.catalog-mechanic ol{counter-reset:catalog-step;list-style:none;padding:0;margin:0}
.catalog-mechanic li{position:relative;counter-increment:catalog-step;padding:24px 0 24px 52px;border-bottom:1px solid #5b3c46}
.catalog-mechanic li:first-child{padding-top:0}.catalog-mechanic li:last-child{border-bottom:0;padding-bottom:0}
.catalog-mechanic li:before{content:'0' counter(catalog-step);position:absolute;left:0;top:27px;font-size:12px;color:#d7927b}.catalog-mechanic li:first-child:before{top:3px}
.catalog-mechanic h3{font-size:23px;font-weight:500;margin:0 0 12px;letter-spacing:-.02em;line-height:1.3}
.catalog-mechanic li p{font-size:16px;line-height:1.8;color:#d7bcb8;margin:0;max-width:470px}
.catalog-takeaway{padding-top:66px;padding-bottom:60px;display:grid;grid-template-columns:1fr 1fr;gap:20px 70px}
.catalog-takeaway>.eyebrow{grid-column:1/-1;margin:0 0 12px}
.catalog-takeaway h2{font-size:clamp(32px,3.4vw,45px);line-height:1.15;font-weight:500;letter-spacing:-.04em;margin:0}
.catalog-takeaway>p:not(.eyebrow){font-size:17px;line-height:1.85;color:#6e5b62;margin:0}
.catalog-references{padding-bottom:58px}
.catalog-references details{border-top:1px solid #d3c6bf;border-bottom:1px solid #d3c6bf}
.catalog-references summary{display:flex;justify-content:space-between;align-items:center;padding:24px 0;cursor:pointer;font-size:16px;line-height:1.6;list-style:none}
.catalog-references summary::-webkit-details-marker{display:none}
.catalog-references summary>span{font-size:26px;color:#a4313c;line-height:1}
.catalog-references details[open] summary>span{transform:rotate(45deg)}
.catalog-reference-body{padding:4px 0 34px;font-size:15px;line-height:1.9;color:#6e5d62}
.catalog-reference-body>p{max-width:930px;margin:0 0 28px}
.catalog-reference-body>dl{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding:24px 0;border-top:1px solid #ded3cc;margin:0 0 30px}
.catalog-reference-body dt{font-size:12px;letter-spacing:.03em;font-weight:700;margin-bottom:8px}
.catalog-reference-body dd{margin:0;font-size:14px;line-height:1.8}
.catalog-reference-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.catalog-reference-images figure{margin:0}.catalog-reference-images figure:first-child{grid-column:1/-1}
.catalog-reference-images img{display:block;width:100%;height:auto;max-width:1600px;margin:0 auto}
.catalog-reference-images figcaption{font-size:13px;line-height:1.75;padding-top:15px;color:#765e64}
.catalog-reference-images figcaption strong{display:block;margin-bottom:5px;color:#51434b}
.catalog-case-danone .catalog-reference-images{align-items:start}.catalog-case-danone .catalog-reference-images figure:first-child{grid-column:auto}
.catalog-case-danone .catalog-reference-images img{width:auto;max-width:100%}
.catalog-case-next{display:grid;grid-template-columns:1.3fr 1fr;gap:80px;padding-top:8px;padding-bottom:80px;align-items:center}
.catalog-case-next h2{font-size:clamp(33px,3.5vw,48px);line-height:1.13;font-weight:500;letter-spacing:-.04em;margin:24px 0}
.catalog-next-project{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:#382431;border-left:1px solid #d5c6bf;padding:25px 0 25px 40px}
.catalog-next-project>span:first-child{font-size:12px;color:#816770}.catalog-next-project strong{font-size:24px;line-height:1.3;font-weight:500;letter-spacing:-.02em}
.catalog-next-project>span:last-child{font-size:30px;color:#a4313c}
@media(min-width:1400px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-card-featured{grid-column:span 3}.catalog-case-hero .catalog-visual{min-height:530px}}
@media(max-width:1100px){
  .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-card-featured{grid-column:span 2}.catalog-card-featured .catalog-card-copy{padding:30px}
  .catalog-case-hero-grid{gap:35px}.catalog-case-hero .catalog-visual{min-height:370px}.catalog-case-intro h1{font-size:50px}.catalog-case-meta{grid-template-columns:1fr;gap:16px}
  .catalog-story-grid{gap:30px}.catalog-story-grid h2{font-size:25px}.catalog-mechanic{gap:45px}.catalog-case-next{gap:45px}
}
@media(max-width:760px){
  .catalog-intro{padding-top:32px;padding-bottom:30px}.catalog-intro>.back-link{margin-bottom:32px}
  .catalog-intro h1{font-size:clamp(43px,10.5vw,64px);margin-top:20px}.catalog-intro>.lead{font-size:17px;line-height:1.8}
  .catalog-intro-bottom{align-items:start;gap:20px;font-size:13px;margin-top:30px}.catalog-intro-bottom>p{max-width:210px}.catalog-intro-bottom>span{white-space:normal;max-width:80px;text-align:right}
  .catalog-grid{grid-template-columns:1fr;gap:24px;padding-bottom:55px}.catalog-card-featured{grid-column:auto;display:flex;min-height:0}
  .catalog-card-featured .catalog-visual{min-height:0;aspect-ratio:1.2}.catalog-card .catalog-card-copy,.catalog-card-featured .catalog-card-copy{padding:25px}
  .catalog-card-featured .catalog-card-copy h2,.catalog-card-copy h2{font-size:30px}.catalog-card-brand{margin-bottom:20px!important}.catalog-card-copy>p{font-size:16px}
  .catalog-visual{aspect-ratio:1.15}.catalog-visual-word{font-size:80px}.catalog-visual-compact .catalog-art-label{font-size:11px}.catalog-visual-compact .catalog-visual-note{font-size:12px}
  .catalog-card-featured .catalog-visual-mcdonalds{aspect-ratio:1.15}.catalog-enquiry{padding-top:45px;padding-bottom:50px}.catalog-enquiry h2{font-size:43px}
  .catalog-case-hero{padding-top:28px;padding-bottom:38px}.catalog-case-hero>.back-link{margin-bottom:32px}
  .catalog-case-hero-grid{grid-template-columns:1fr;gap:32px}.catalog-case-intro h1{font-size:clamp(43px,10.7vw,60px)}.catalog-case-intro>.lead{font-size:17px}
  .catalog-case-meta{grid-template-columns:1fr 1fr;gap:22px}.catalog-case-meta dt{font-size:11px}.catalog-case-meta dd{font-size:14px}
  .catalog-case-hero .catalog-visual{min-height:0;aspect-ratio:1.05}.catalog-source-window{width:78%}
  .catalog-case-story{padding-top:35px;padding-bottom:42px}.catalog-story-grid{grid-template-columns:1fr;gap:36px;margin-top:28px}.catalog-story-grid h2{font-size:29px;margin:19px 0 15px}.catalog-story-grid p{font-size:16px;line-height:1.85}
  .catalog-mechanic{grid-template-columns:1fr;gap:25px;padding-top:40px;padding-bottom:42px}.catalog-mechanic h2{font-size:40px;margin-bottom:10px}.catalog-mechanic li{padding-top:24px;padding-bottom:24px}.catalog-mechanic h3{font-size:24px}
  .catalog-takeaway{grid-template-columns:1fr;gap:22px;padding-top:44px;padding-bottom:40px}.catalog-takeaway>.eyebrow{margin:0}.catalog-takeaway h2{font-size:35px}.catalog-takeaway>p:not(.eyebrow){font-size:16px}
  .catalog-references{padding-bottom:42px}.catalog-reference-body>dl{grid-template-columns:1fr;gap:22px}.catalog-reference-images{grid-template-columns:1fr;gap:28px}.catalog-reference-images figure:first-child{grid-column:auto}
  .catalog-case-next{grid-template-columns:1fr;gap:40px;padding-bottom:50px}.catalog-case-next h2{font-size:38px}.catalog-next-project{border-left:0;border-top:1px solid #d5c6bf;padding:25px 0 0}
}
@media(prefers-reduced-motion:reduce){.catalog-card{transition:none}.catalog-card:hover{transform:none}}
