/* =========================================================
   APPROACH PAGE ONLY
   Loaded AFTER css/style.css.
   No header/footer/shared-site rules here.
========================================================= */

.ap-page{width:100%;overflow:hidden;background:#fff;color:#111}
.ap-page img{display:block;width:100%;height:100%;object-fit:cover}
.ap-kicker{display:block;margin-bottom:14px;font-size:9px;font-weight:600;line-height:1.2;letter-spacing:.08em}
.ap-short-line{display:block;width:25px;height:1px;margin-top:24px;background:#777}

/* HERO */
.ap-hero{position:relative;display:grid;grid-template-columns:36% 64%;width:100%;min-height:430px;border-bottom:1px solid #ddd}
.ap-hero-copy{position:relative;z-index:3;display:flex;flex-direction:column;justify-content:center;padding:46px 8% 46px 12%;background:#fff}
.ap-hero-copy h1{margin:0;font-size:clamp(34px,2.8vw,46px);font-weight:300;line-height:.96;letter-spacing:-.055em}
.ap-hero-copy p{max-width:360px;margin:24px 0 0;font-size:12px;line-height:1.55}
.ap-hero-media{position:relative;min-width:0;min-height:430px;overflow:hidden;background:#e7e7e7}
.ap-hero-media img{position:absolute;inset:0;object-position:center}
.ap-hero-media::before{content:"";position:absolute;z-index:2;inset:0 auto 0 0;width:27%;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.94),rgba(255,255,255,.67) 26%,rgba(255,255,255,.30) 58%,rgba(255,255,255,.08) 82%,rgba(255,255,255,0))}
.ap-hero-keywords{position:absolute;z-index:3;top:52px;right:6.8%;display:flex;flex-direction:column;font-size:9px;font-weight:600;line-height:1.65;letter-spacing:.06em}

/* COMMON */
.ap-section{width:100%;padding:44px 4.5% 48px}
.ap-section-intro{display:grid;grid-template-columns:28% 34% 1fr;align-items:start;column-gap:4%;margin-bottom:28px}
.ap-section-intro h2,.ap-method-heading h2,.ap-nature-heading h2,.ap-collaboration-heading h2{margin:0;font-size:clamp(28px,2.25vw,37px);font-weight:300;line-height:.97;letter-spacing:-.05em}
.ap-section-intro>p{max-width:430px;margin:2px 0 0;font-size:12px;line-height:1.55}

/* LENSES */
.ap-lenses{border-bottom:1px solid #ddd}
.ap-lenses-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.ap-number{display:block;margin-bottom:9px;font-size:9px;font-weight:500}
.ap-image{width:100%;overflow:hidden;background:#e8e8e8}
.ap-image-lens{aspect-ratio:1.5/1}
.ap-lens h3,.ap-nature-item h3{margin:15px 0 8px;font-size:11px;font-weight:600;line-height:1.25}
.ap-lens p,.ap-nature-item p{max-width:290px;margin:0;font-size:10px;line-height:1.55}

/* METHOD */
.ap-method{display:grid;grid-template-columns:29% 1fr;gap:7%;padding-top:44px;padding-bottom:46px;border-bottom:1px solid #ddd}
.ap-method-content{padding-top:8px}
.ap-method-lead{max-width:540px;margin:0 0 26px;font-size:12px;line-height:1.55}
.ap-process{display:flex;align-items:center;width:100%}
.ap-process-item{display:flex;flex-direction:column;min-width:82px}
.ap-process-number{margin-bottom:9px;font-size:8px;color:#777}
.ap-process-item strong{font-size:9px;font-weight:600;letter-spacing:.025em}
.ap-process-arrow{flex:1;min-width:22px;padding:0 7px;font-size:15px;font-weight:300;color:#777;text-align:center}
.ap-method-note{max-width:510px;margin:22px 0 0;font-size:10px;line-height:1.6;color:#555}

/* EDITORIAL */
.ap-editorial{display:grid;grid-template-columns:38% 62%;width:100%;min-height:390px;border-bottom:1px solid #ddd}
.ap-editorial-photo-left{grid-template-columns:62% 38%}
.ap-editorial-copy{display:flex;flex-direction:column;justify-content:center;padding:44px 11%}
.ap-editorial-copy h2{margin:0;font-size:clamp(30px,2.55vw,42px);font-weight:300;line-height:.96;letter-spacing:-.055em}
.ap-editorial-copy p{max-width:360px;margin:22px 0 0;font-size:12px;line-height:1.55}
.ap-editorial-copy p+p{margin-top:16px}
.ap-editorial-media{position:relative;min-width:0;min-height:390px;overflow:hidden;background:#e5e5e5}

/* NATURE */
.ap-nature{padding-top:46px;padding-bottom:50px;border-bottom:1px solid #ddd}
.ap-nature-heading{display:grid;grid-template-columns:29% 34% 1fr;gap:4%;margin-bottom:28px}
.ap-nature-heading>p{max-width:430px;margin:3px 0 0;font-size:12px;line-height:1.55}
.ap-nature-grid{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr);align-items:center;gap:14px}
.ap-nature-image{aspect-ratio:1.35/1}
.ap-nature-arrow{font-size:23px;font-weight:200;text-align:center;color:#777}
.ap-nature-item:last-child .ap-nature-image img{object-fit:contain;padding:4%;background:#f2f2f2}

/* MATERIAL */
.ap-material{display:grid;grid-template-columns:38% 62%;width:100%;min-height:410px;border-bottom:1px solid #ddd}
.ap-material-copy{display:flex;flex-direction:column;justify-content:center;padding:46px 11%}
.ap-material-copy h2{margin:0;font-size:clamp(30px,2.5vw,41px);font-weight:300;line-height:.96;letter-spacing:-.055em}
.ap-material-copy p{max-width:365px;margin:22px 0 0;font-size:12px;line-height:1.55}
.ap-project-reference{display:block;margin-top:22px;font-size:10px;font-weight:600;letter-spacing:.08em}
.ap-material-media{position:relative;min-width:0;min-height:410px;overflow:hidden;background:#d7d3cc}

/* SHARED EXPERTISE */
.ap-collaboration{padding-top:46px;padding-bottom:50px}
.ap-collaboration-heading{display:grid;grid-template-columns:29% 34% 1fr;gap:4%;margin-bottom:28px}
.ap-collaboration-heading>p{max-width:350px;margin:3px 0 0;font-size:12px;line-height:1.55}
.ap-collaboration-grid{display:grid;grid-template-columns:64% 1fr;gap:20px}
.ap-collaboration-main{height:340px;min-height:0;overflow:hidden;background:#ddd}
.ap-collaboration-side{display:flex;flex-direction:column;gap:20px}
.ap-collaboration-small-image{width:100%;height:185px;min-height:0;overflow:hidden;background:#eee}
.ap-collaboration-text{max-width:390px}
.ap-collaboration-text p{margin:0;font-size:12px;line-height:1.65}
.ap-collaboration-text p+p{margin-top:15px}

/* CLOSING STRIP */
.ap-material-strip{position:relative;width:100%;height:clamp(58px,5vw,82px);overflow:hidden;background:#222}

/* TABLET */
@media(max-width:1000px){
 .ap-hero{grid-template-columns:42% 58%;min-height:540px}
 .ap-hero-copy{padding:65px 9%}.ap-hero-media{min-height:540px}.ap-hero-media::before{width:32%}
 .ap-section{padding-left:6%;padding-right:6%}
 .ap-section-intro,.ap-nature-heading,.ap-collaboration-heading{grid-template-columns:24% 36% 1fr;gap:4%}
 .ap-lenses-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 25px}
 .ap-method{grid-template-columns:34% 1fr;gap:5%}
 .ap-editorial{grid-template-columns:44% 56%;min-height:520px}.ap-editorial-photo-left{grid-template-columns:56% 44%}.ap-editorial-media{min-height:520px}
 .ap-material{grid-template-columns:44% 56%;min-height:540px}.ap-material-media{min-height:540px}
 .ap-collaboration-grid{grid-template-columns:60% 1fr}.ap-collaboration-main{min-height:430px}
}

/* MOBILE */
@media(max-width:700px){
 .ap-hero{display:flex;flex-direction:column;min-height:0}
 .ap-hero-copy{order:1;padding:58px 25px 52px}.ap-hero-copy h1{font-size:clamp(43px,12vw,59px);line-height:.94}
 .ap-hero-media{order:2;height:68vh;min-height:430px;max-height:680px}.ap-hero-media::before{display:none}
 .ap-hero-keywords{top:27px;right:auto;left:25px}
 .ap-section{padding:58px 25px 62px}
 .ap-section-intro,.ap-nature-heading,.ap-collaboration-heading{display:block;margin-bottom:38px}
 .ap-section-intro h2,.ap-method-heading h2,.ap-nature-heading h2,.ap-collaboration-heading h2{font-size:clamp(39px,11vw,54px)}
 .ap-section-intro>p,.ap-nature-heading>p,.ap-collaboration-heading>p{max-width:430px;margin-top:24px}
 .ap-lenses-grid{grid-template-columns:1fr;gap:42px}
 .ap-method{display:block;padding-top:62px;padding-bottom:65px}.ap-method-content{padding-top:35px}
 .ap-process{display:flex;flex-direction:column;align-items:flex-start}.ap-process-item{width:100%;padding:13px 0;border-bottom:1px solid #ddd}.ap-process-arrow{display:none}
 .ap-editorial,.ap-editorial-photo-left{display:flex;flex-direction:column;min-height:0}
 .ap-editorial-copy{order:1;padding:58px 25px 55px}.ap-editorial-media{order:2;height:67vh;min-height:430px;max-height:700px}
 .ap-nature-grid{display:flex;flex-direction:column;align-items:stretch;gap:38px}.ap-nature-arrow{display:none}
 .ap-material{display:flex;flex-direction:column;min-height:0}.ap-material-copy{order:1;padding:60px 25px 55px}.ap-material-media{order:2;height:68vh;min-height:440px;max-height:700px}
 .ap-collaboration-grid{display:flex;flex-direction:column;gap:22px}.ap-collaboration-main{min-height:0;aspect-ratio:1.25/1}.ap-collaboration-small-image{min-height:0;aspect-ratio:1.35/1}
 .ap-material-strip{height:58px}
}

/* =========================================================
   APPROACH — COMPOSITION REFINEMENT 02
   Clear text/image separation + smaller image scale
========================================================= */

@media (min-width:1001px){

  /* WAYS OF SEEING: one title only, clean editorial band */
  .ap-lenses{padding-top:42px;padding-bottom:46px}
  .ap-section-intro-lenses{
    display:grid;
    grid-template-columns:38% 1fr;
    column-gap:7%;
    align-items:start;
    margin-bottom:30px;
  }
  .ap-section-intro-lenses h2{
    grid-column:1;
    font-size:clamp(28px,2.25vw,37px);
  }
  .ap-section-intro-lenses>p{
    grid-column:2;
    max-width:390px;
    margin:2px 0 0;
  }

  /* Four images deliberately smaller and never under text */
  .ap-lenses-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:24px;
    align-items:start;
  }
  .ap-image-lens{
    aspect-ratio:auto;
    height:150px;
  }
  .ap-lens .ap-number{
    margin:10px 0 0;
  }
  .ap-lens h3{
    margin:6px 0 7px;
  }

  /* METHOD tighter */
  .ap-method{
    padding-top:40px;
    padding-bottom:42px;
  }

  /* Editorial photography reduced again */
  .ap-editorial,
  .ap-editorial-media{
    min-height:350px;
  }
  .ap-editorial-copy{
    padding-top:38px;
    padding-bottom:38px;
  }

  /* Nature: same rule — image first, text below */
  .ap-nature{
    padding-top:42px;
    padding-bottom:46px;
  }
  .ap-nature-heading{
    margin-bottom:28px;
  }
  .ap-nature-grid{
    grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) 24px minmax(0,1fr);
    gap:12px;
  }
  .ap-nature-image{
    aspect-ratio:auto;
    height:170px;
  }
  .ap-nature-item .ap-number{
    margin:10px 0 0;
  }
  .ap-nature-item h3{
    margin:6px 0 7px;
  }

  /* Material and collaboration scaled down */
  .ap-material,
  .ap-material-media{
    min-height:370px;
  }
  .ap-material-copy{
    padding-top:40px;
    padding-bottom:40px;
  }
  .ap-collaboration{
    padding-top:42px;
    padding-bottom:46px;
  }
  .ap-collaboration-heading{
    margin-bottom:28px;
  }
  .ap-collaboration-main{
    height:300px;
  }
  .ap-collaboration-small-image{
    height:160px;
  }
}

/* TABLET */
@media (min-width:701px) and (max-width:1000px){
  .ap-section-intro-lenses{
    grid-template-columns:38% 1fr;
    margin-bottom:30px;
  }
  .ap-section-intro-lenses h2{grid-column:1}
  .ap-section-intro-lenses>p{grid-column:2;margin-top:2px}
  .ap-image-lens{aspect-ratio:auto;height:180px}
  .ap-lens .ap-number,.ap-nature-item .ap-number{margin:10px 0 0}
  .ap-lens h3,.ap-nature-item h3{margin-top:6px}
  .ap-nature-image{aspect-ratio:auto;height:190px}
}

/* MOBILE: image first, labels safely below */
@media (max-width:700px){
  .ap-section-intro-lenses{display:block;margin-bottom:30px}
  .ap-section-intro-lenses>p{margin-top:20px}
  .ap-image-lens{aspect-ratio:auto;height:230px}
  .ap-lens .ap-number,.ap-nature-item .ap-number{margin:10px 0 0}
  .ap-lens h3,.ap-nature-item h3{margin-top:6px}
  .ap-nature-image{aspect-ratio:auto;height:230px}
}

/* =========================================================
   FINAL SCREENSHOT CORRECTIONS — 2026-10-01
   Keep the good layout; fix only lenses/process/nature/collaboration.
========================================================= */
@media (min-width:1001px){
  /* WAYS OF SEEING — single clean heading; compact cards */
  .ap-lenses{padding-top:38px;padding-bottom:42px}
  .ap-section-intro-lenses{grid-template-columns:31% 1fr;column-gap:8%;margin-bottom:28px}
  .ap-section-intro-lenses h2{font-size:clamp(30px,2.35vw,39px)}
  .ap-lenses-grid{gap:26px}
  .ap-image-lens{height:155px}

  /* PROCESS — graphic continuous line with six nodes */
  .ap-method{padding-top:38px;padding-bottom:40px;grid-template-columns:30% 1fr;gap:6%}
  .ap-method-content{padding-top:4px}
  .ap-method-lead{margin-bottom:30px}
  .ap-process{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;align-items:start;padding-top:14px}
  .ap-process::before{content:"";position:absolute;left:5px;right:5px;top:18px;height:1px;background:#b8b8b8}
  .ap-process-item{position:relative;z-index:2;min-width:0;padding-top:15px;background:#fff}
  .ap-process-item::before{content:"";position:absolute;top:0;left:0;width:7px;height:7px;border:1px solid #777;border-radius:50%;background:#fff;transform:translateY(-1px)}
  .ap-process-number{margin:0 0 7px;font-size:8px;color:#777}
  .ap-process-item strong{font-size:9px;white-space:nowrap}
  .ap-process-arrow{display:none}
  .ap-method-note{margin-top:24px}

  /* FROM NATURE TO DESIGN — restore compact proportions */
  .ap-nature{padding-top:40px;padding-bottom:44px}
  .ap-nature-heading{margin-bottom:26px}
  .ap-nature-grid{grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr);gap:13px}
  .ap-nature-image{height:190px}

  /* SHARED EXPERTISE — images no longer dominate the page */
  .ap-collaboration{padding-top:40px;padding-bottom:44px}
  .ap-collaboration-heading{margin-bottom:26px}
  .ap-collaboration-grid{grid-template-columns:64% 1fr;gap:22px;align-items:start}
  .ap-collaboration-main{height:300px;min-height:0}
  .ap-collaboration-side{gap:18px}
  .ap-collaboration-small-image{height:160px;min-height:0}
  .ap-collaboration-text p{font-size:11px;line-height:1.58}
}

/* =========================================================
   USER CORRECTIONS — LOWER HALF / DESKTOP
   2026-10-01
========================================================= */
@media (min-width:1001px){
  /* WAYS OF SEEING: heading stays high / on top */
  .ap-lenses .ap-section-intro{align-items:start;margin-bottom:22px}
  .ap-lenses .ap-section-intro h2{align-self:start;margin-top:0}

  /* A METHOD IN MOTION: make the process graphic clearly visible */
  .ap-method-content{padding-top:0}
  .ap-process{margin-top:6px;padding-top:18px}
  .ap-process::before{left:3px;right:3px;top:21px;height:2px;background:#777}
  .ap-process-item{padding-top:18px}
  .ap-process-item::before{top:0;width:9px;height:9px;border:2px solid #555;background:#fff}
  .ap-process-item strong{font-size:10px}

  /* THINKING THROUGH MAKING: copy LEFT, image RIGHT */
  .ap-editorial.ap-editorial-photo-left{grid-template-columns:38% 62%}
  .ap-editorial.ap-editorial-photo-left .ap-editorial-copy{grid-column:1;grid-row:1}
  .ap-editorial.ap-editorial-photo-left .ap-editorial-media{grid-column:2;grid-row:1}

  /* FROM NATURE TO DESIGN: heading remains above images */
  .ap-nature-heading{align-items:start;margin-bottom:24px}
  .ap-nature-heading h2{align-self:start}

  /* Bianchi: enlarge inside its holder */
  .ap-nature-item:last-child .ap-nature-image img{object-fit:cover;padding:0;background:#f2f2f2;transform:scale(1.12)}

  /* KRION: reduce photo dominance, enlarge project name */
  .ap-material{grid-template-columns:46% 54%;min-height:330px}
  .ap-material-media{min-height:330px;height:330px}
  .ap-material-copy{padding:34px 10%}
  .ap-project-reference{margin-top:20px;font-size:15px;font-weight:600;letter-spacing:.10em}

  /* SHARED EXPERTISE: heading/text LEFT of photography, never above it */
  .ap-collaboration{display:grid;grid-template-columns:32% 1fr;column-gap:5%;align-items:start;padding-top:40px;padding-bottom:44px}
  .ap-collaboration-heading{display:block;margin:0;padding-top:0}
  .ap-collaboration-heading .ap-kicker{margin-bottom:14px}
  .ap-collaboration-heading h2{margin:0}
  .ap-collaboration-heading>p{max-width:300px;margin:22px 0 0}
  .ap-collaboration-grid{grid-template-columns:minmax(0,1.55fr) minmax(220px,.72fr);gap:18px;align-items:start}
  .ap-collaboration-main{height:270px}
  .ap-collaboration-small-image{height:178px}
  .ap-collaboration-main img{object-position:center 42%}
  .ap-collaboration-small-image img{object-position:center 30%}
  .ap-collaboration-text{max-width:330px}
}

/* =========================================================
   FINAL MICRO-FIX — WAYS OF SEEING
   Keep heading clearly separated from the image row.
========================================================= */
@media (min-width:1001px){
  .ap-lenses .ap-section-intro-lenses{
    margin-bottom:44px;
  }
  .ap-lenses-grid{
    margin-top:0;
  }
}

/* =========================================================
   FINAL LOWER-HALF FIXES — v4
   Based on screenshot review, desktop only.
========================================================= */
@media (min-width:1001px){
  /* Keep WAYS OF SEEING as approved */

  /* A METHOD IN MOTION — unmistakable continuous process graphic */
  .ap-method-content{overflow:visible}
  .ap-process{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px;align-items:start;margin-top:8px;padding-top:22px}
  .ap-process::before{content:"";position:absolute;z-index:0;left:5px;right:5px;top:26px;height:2px;background:#666}
  .ap-process-item{position:relative;z-index:1;min-width:0;padding-top:18px;background:transparent}
  .ap-process-item::before{content:"";position:absolute;top:0;left:0;box-sizing:border-box;width:10px;height:10px;border:2px solid #555;border-radius:50%;background:#fff}
  .ap-process-item strong{font-size:10px;white-space:nowrap}
  .ap-process-arrow{display:none!important}

  /* PRINCIPLES / FROM NATURE TO DESIGN — all intro copy on left, then 3 aligned images */
  .ap-nature-heading{display:block;max-width:440px;margin:0 0 28px}
  .ap-nature-heading .ap-kicker{margin-bottom:14px}
  .ap-nature-heading h2{margin:0}
  .ap-nature-heading>p{max-width:420px;margin:20px 0 0}
  .ap-nature-grid{align-items:start}
  .ap-nature-image{height:180px}

  /* MATERIAL EXPLORATION — slightly smaller image / stronger KRION */
  .ap-material{grid-template-columns:48% 52%;min-height:310px}
  .ap-material-media{height:310px;min-height:310px}
  .ap-material-copy{padding-top:30px;padding-bottom:30px}
  .ap-project-reference{font-size:16px;margin-top:18px}

  /* SHARED EXPERTISE — compact photography, no crop on Yamada/Stefano, no side copy */
  .ap-collaboration{grid-template-columns:34% 1fr;column-gap:5%;padding-top:36px;padding-bottom:38px}
  .ap-collaboration-grid{grid-template-columns:minmax(0,1.65fr) minmax(210px,.72fr);gap:18px}
  .ap-collaboration-main{height:235px}
  .ap-collaboration-small-image{height:170px;background:#eee}
  .ap-collaboration-small-image img{object-fit:contain!important;object-position:center!important;background:#eee}
  .ap-collaboration-text{display:none!important}

  /* Closing strip less dominant */
  .ap-material-strip{height:52px}
}

/* Remove accidental hairline gap between adjacent editorial image blocks */
.ap-editorial + .ap-editorial{margin-top:-1px}

/* =========================================================
   FINAL GENERAL MICRO-FIXES — v5
   2026-10-01
========================================================= */
@media (min-width:1001px){
  /* WAYS OF SEEING — lock title to the same left axis as card 01 */
  .ap-lenses .ap-section-intro-lenses{
    grid-template-columns:31% 1fr;
    column-gap:8%;
    margin-bottom:40px;
  }
  .ap-lenses .ap-section-intro-lenses h2,
  .ap-lenses-grid .ap-lens:first-child{
    justify-self:stretch;
  }

  /* MATERIAL EXPLORATION — slightly less image dominance */
  .ap-material{grid-template-columns:49% 51%;min-height:285px}
  .ap-material-media{height:285px;min-height:285px}
  .ap-material-copy{padding-top:27px;padding-bottom:27px}
  .ap-project-reference{font-size:16px;margin-top:17px}

  /* SHARED EXPERTISE — tighter studio image + larger readable portrait */
  .ap-collaboration{grid-template-columns:34% 1fr;column-gap:5%;padding-top:34px;padding-bottom:32px}
  .ap-collaboration-grid{grid-template-columns:minmax(0,1fr) 190px;gap:20px;align-items:start}
  .ap-collaboration-main{height:220px}
  .ap-collaboration-main img{object-position:center 42%}
  .ap-collaboration-small-image{width:190px;height:190px;background:#f1f1f1}
  .ap-collaboration-small-image img{width:100%;height:100%;object-fit:contain!important;object-position:center!important;transform:scale(1.08)}
  .ap-collaboration-text{display:none!important}

  /* Closing strip */
  .ap-material-strip{height:44px}

  /* FOOTER — reduce excessive vertical space on Approach */
  .approach-page .site-footer,
  body.approach-page .site-footer{
    padding-top:28px;
    padding-bottom:14px;
  }
  .approach-page .footer-main,
  body.approach-page .footer-main{
    padding-bottom:26px;
  }
  .approach-page .footer-bottom,
  body.approach-page .footer-bottom{
    padding-top:12px;
  }
}

/* =========================================================
   FINAL FIXES — v6
   Portrait holder + compact black footer
========================================================= */
@media (min-width:1001px){
  /* YAMADA / STEFANO — remove visible placeholder/holder behind portrait */
  .ap-collaboration-small-image{
    width:190px;
    height:190px;
    background:transparent!important;
    overflow:hidden;
  }
  .ap-collaboration-small-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain!important;
    object-position:center!important;
    background:transparent!important;
    transform:none!important;
  }

  /* FOOTER — lower, black, white typography, red @ */
  .approach-page .site-footer,
  body.approach-page .site-footer{
    padding:20px 4.5% 12px!important;
    background:#111!important;
    color:#fff!important;
  }
  .approach-page .footer-main,
  body.approach-page .footer-main{
    padding-bottom:18px!important;
  }
  .approach-page .footer-bottom,
  body.approach-page .footer-bottom{
    padding-top:10px!important;
    border-top-color:rgba(255,255,255,.25)!important;
    color:#fff!important;
  }
  .approach-page .footer-brand,
  .approach-page .footer-contact,
  .approach-page .footer-email,
  .approach-page .footer-links a,
  .approach-page .footer-social a,
  body.approach-page .footer-brand,
  body.approach-page .footer-contact,
  body.approach-page .footer-email,
  body.approach-page .footer-links a,
  body.approach-page .footer-social a{
    color:#fff!important;
  }
  .approach-page .footer-at,
  body.approach-page .footer-at{
    color:#d71920!important;
  }
}


/* =========================================================
   FINAL INTEGRATION — v7
   custom process line, calmer editorial images, compact footer
========================================================= */
@media (min-width:1001px){
  /* METHOD IN MOTION — use Stefano's hand-drawn line + existing dots */
  .ap-process-custom{
    position:relative;
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:0;
    width:100%;
    margin-top:6px;
    padding:82px 0 0;
    overflow:visible;
  }
  .ap-process-custom::before{display:none!important}
  .ap-process-line-art{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:78px;
    object-fit:fill!important;
    object-position:center!important;
    pointer-events:none;
  }
  .ap-process-custom .ap-process-item{
    position:relative;
    display:block;
    min-width:0;
    padding:0 10px 0 0;
    background:transparent;
  }
  .ap-process-custom .ap-process-item::before{display:none!important}
  .ap-process-custom .ap-process-item strong{font-size:9px;line-height:1.2;white-space:nowrap}

  /* ROYAL COLLEGE + SKETCH — smaller landscape images, both anchored right */
  .ap-editorial,
  .ap-editorial-photo-left{
    grid-template-columns:55% 45%;
    min-height:320px;
  }
  .ap-editorial-copy{
    grid-column:1;
    grid-row:1;
    padding:42px 15% 42px 8.2%;
  }
  .ap-editorial-media{
    grid-column:2;
    grid-row:1;
    min-height:320px;
    height:320px;
    background:#fff;
  }
  .ap-editorial-media img{object-fit:cover;object-position:center}
  .ap-editorial:first-of-type .ap-editorial-media img{object-position:center 45%}
  .ap-editorial-photo-left .ap-editorial-media img{object-position:center center}

  /* Footer: genuinely compact; black theme now applies because body has approach-page */
  body.approach-page .site-footer{padding:16px 4.5% 10px!important;background:#0b0b0b!important;color:#fff!important}
  body.approach-page .footer-main{padding-bottom:12px!important}
  body.approach-page .footer-bottom{padding-top:8px!important}
  body.approach-page .footer-at{color:#d71920!important}
}

/* Tablet: preserve the hand-drawn line and keep labels readable. */
@media (min-width:701px) and (max-width:1000px){
  .ap-process-custom{position:relative;display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;padding-top:66px;align-items:start}
  .ap-process-custom .ap-process-line-art{display:block;position:absolute;left:0;top:0;width:100%;height:62px;object-fit:fill!important}
  .ap-process-custom .ap-process-item{width:auto!important;padding:0 5px 0 0!important;border:0!important}
  .ap-process-custom .ap-process-item strong{font-size:8px;white-space:normal}
  body.approach-page .site-footer{background:#0b0b0b;color:#fff}
  body.approach-page .footer-brand,body.approach-page .footer-contact,body.approach-page .footer-email,body.approach-page .footer-links a,body.approach-page .footer-social a{color:#fff}
}

/* Mobile: the decorative line would become too compressed, so use a clean vertical process. */
@media (max-width:700px){
  .ap-process-custom .ap-process-line-art{display:none}
  body.approach-page .site-footer{padding:28px 25px 16px;background:#0b0b0b;color:#fff}
  body.approach-page .footer-main{gap:24px;padding-bottom:24px}
  body.approach-page .footer-brand,body.approach-page .footer-contact,body.approach-page .footer-email,body.approach-page .footer-links a,body.approach-page .footer-social a{color:#fff}
  body.approach-page .footer-at{color:#d71920}
}

/* V9 — Shared Expertise: Yamada photo same visual height as studio image */
@media (min-width:1001px){
  .ap-collaboration-grid{
    grid-template-columns:64% 1fr;
    align-items:start;
  }
  .ap-collaboration-main,
  .ap-collaboration-small-image{
    height:300px;
  }
  .ap-collaboration-small-image img{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    background:#fff;
  }
}

@media (min-width:701px) and (max-width:1000px){
  .ap-collaboration-main,
  .ap-collaboration-small-image{
    height:300px;
    min-height:0;
  }
  .ap-collaboration-small-image img{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    background:#fff;
  }
}

/* V10 — Shared Expertise final balance + footer social visibility */
@media (min-width:1001px){
  .ap-collaboration-grid{
    grid-template-columns:minmax(0, 1fr) 245px;
    gap:12px;
    align-items:start;
  }
  .ap-collaboration-main,
  .ap-collaboration-small-image{
    height:300px;
  }
  .ap-collaboration-small-image{
    width:245px;
    overflow:hidden;
    background:#fff!important;
  }
  .ap-collaboration-small-image img{
    width:100%;
    height:100%;
    object-fit:contain!important;
    object-position:center!important;
    transform:scale(1.12)!important;
    transform-origin:center center;
  }
  body.approach-page .social-linkedin img{
    filter:invert(1);
    width:18px;
    height:18px;
  }
  body.approach-page .social-coroflot{
    font-size:12px;
    font-weight:600;
  }
}


/* =========================================================
   V11 — SHARED EXPERTISE DEFINITIVE LAYOUT
   Copy left / two equal-height images right
========================================================= */
.ap-hero-keywords{color:#fff;}

.ap-collaboration-copy h2{
  margin:0;
  font-size:clamp(28px,2.25vw,37px);
  font-weight:300;
  line-height:.97;
  letter-spacing:-.05em;
}
.ap-collaboration-lead,
.ap-collaboration-text{
  margin:20px 0 0;
  font-size:12px;
  line-height:1.55;
}

@media (min-width:1001px){
  .ap-collaboration{
    display:grid!important;
    grid-template-columns:29% minmax(0,1fr)!important;
    column-gap:5%!important;
    align-items:start!important;
    padding-top:34px!important;
    padding-bottom:32px!important;
  }
  .ap-collaboration-copy{
    min-width:0;
  }
  .ap-collaboration-lead,
  .ap-collaboration-text{
    display:block!important;
    max-width:300px;
  }
  .ap-collaboration-images{
    display:grid;
    grid-template-columns:minmax(0,1fr) 245px;
    gap:12px;
    align-items:stretch;
    min-width:0;
  }
  .ap-collaboration-main,
  .ap-collaboration-small-image{
    width:100%!important;
    height:300px!important;
    min-height:300px!important;
    overflow:hidden;
    background:#fff!important;
  }
  .ap-collaboration-main img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 42%;
  }
  .ap-collaboration-small-image img{
    width:100%;
    height:100%;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
    background:#fff!important;
  }
}

@media (min-width:701px) and (max-width:1000px){
  .ap-collaboration{display:block!important;}
  .ap-collaboration-copy{margin-bottom:28px;}
  .ap-collaboration-lead,
  .ap-collaboration-text{display:block!important;max-width:430px;}
  .ap-collaboration-images{
    display:grid;
    grid-template-columns:minmax(0,1fr) 34%;
    gap:14px;
    align-items:stretch;
  }
  .ap-collaboration-main,
  .ap-collaboration-small-image{
    width:100%!important;
    height:300px!important;
    min-height:300px!important;
    background:#fff!important;
  }
  .ap-collaboration-small-image img{object-fit:contain!important;transform:none!important;}
}

@media (max-width:700px){
  .ap-collaboration{display:block!important;}
  .ap-collaboration-copy{margin-bottom:30px;}
  .ap-collaboration-copy h2{font-size:clamp(39px,11vw,54px);}
  .ap-collaboration-lead,
  .ap-collaboration-text{display:block!important;max-width:430px;}
  .ap-collaboration-images{display:flex;flex-direction:column;gap:16px;}
  .ap-collaboration-main{width:100%;aspect-ratio:1.35/1;height:auto!important;min-height:0!important;}
  .ap-collaboration-small-image{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1.35/1;background:#fff!important;}
  .ap-collaboration-small-image img{object-fit:contain!important;transform:none!important;}
}


/* V12 — Royal College photo caption */
.ap-editorial-media-royal{position:relative;}
.ap-photo-caption{position:absolute;z-index:3;left:18px;bottom:14px;margin:0;padding:5px 7px;background:rgba(255,255,255,.88);color:#111;font-size:8px;line-height:1.35;letter-spacing:.02em;max-width:360px;}
@media (max-width:700px){
  .ap-photo-caption{left:14px;right:14px;bottom:12px;max-width:none;font-size:8px;}
}



.ap-yamada-caption{
  position:absolute;
  top:10px !important;
  left:10px !important;
  right:10px !important;
  bottom:auto !important;

  z-index:3;
  color:#fff !important;
  background:transparent !important;

  font-size:9px;
  line-height:1.25;
  font-weight:400;
  letter-spacing:.01em;

  text-shadow:0 1px 3px rgba(0,0,0,.55);
}
/* Match the active-page underline used by WORK and ABOUT. */
.approach-page .main-nav a.active { position: relative; }
.approach-page .main-nav a.active::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: -12px;
  height: 1px; background: #111111;
}
@media (max-width: 700px) {
  .approach-page .main-nav a.active::after { display: none; }
}
