/* THE ARCHER EDIT / CINEMATIC HOMEPAGE V3 — 19 OCTOBER 2026
 * The accepted landing scene, shared header, footer and film dialog stay intact.
 * 01 Editorial foundation · 02 Opening · 03 Service cinema · 04 Pre-owned
 * 05 Colour shelf · 06 Restoration theatre · 07 Timeline · 08 Conversation
 * 09 Responsive art direction · 10 Native and motion fallbacks */

/* 01 / EDITORIAL FOUNDATION — AP3 ONLY, NEVER THE ORIGINAL HERO */
body .aphc-home .ap3-section {
  --ap3-ink: #26332e;
  --ap3-muted: #59695e;
  --ap3-line: #bec8bc;
  --ap3-navy: #111a3d;
  --ap3-cyan: #6fefff;
  padding-block: clamp(70px,6.2vw,106px);
  color: var(--ap3-ink);
  background: #eeeae2;
  font: 400 16px/1.7 Arial,Helvetica,sans-serif;
}
body .aphc-home .ap3-wrap { width: calc(100% - 112px); max-width: 1700px; margin-inline: auto; }
body .aphc-home .ap3-section :is(div,figure,nav,article,a,h2,h3,p,dl,dd) { min-width: 0; }
body .aphc-home .ap3-section :is(h2,h3,p,figure,dl,dd) { margin: 0; }
body .aphc-home .ap3-section [hidden] { display: none !important; }
body .aphc-home .ap3-section .ap3-kicker { color: var(--ap3-muted); font-size: 12px; line-height: 1.55; font-weight: 600; letter-spacing: .11em; text-transform: uppercase; }
body .aphc-home .ap3-section h2.ap3-title { color: inherit; font: 700 clamp(43px,5.5vw,91px)/.98 Arial,Helvetica,sans-serif; letter-spacing: -.065em; text-transform: uppercase; text-wrap: balance; }
body .aphc-home .ap3-title > span { display: block; }
body .aphc-home .ap3-section .ap3-title em { font: inherit; letter-spacing: inherit; }
body .aphc-home .ap3-kicker + h2.ap3-title { margin-top: 24px; }
body .aphc-home .ap3-section .ap3-copy { max-width: 630px; color: var(--ap3-muted); font-size: 17px; line-height: 1.75; }
body .aphc-home .ap3-section .ap3-note { color: var(--ap3-muted); font-size: 12px; line-height: 1.7; }
body .aphc-home .ap3-section .ap3-btn { display: inline-flex; align-items: center; justify-content: space-between; gap: 30px; width: fit-content; max-width: 100%; min-height: 55px; padding: 17px 22px; border: 1px solid #111a3d; border-radius: 1px; background: #111a3d; color: #fff; font-size: 13px; line-height: 1.5; font-weight: 600; letter-spacing: .015em; box-shadow: 0 1px 0 #ffffff15 inset; transition: background .22s ease,border-color .22s ease; }
body .aphc-home .ap3-btn b { color: #6fefff; font-size: 24px; line-height: 1; font-weight: 400; }
body .aphc-home .ap3-section .ap3-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 25px; min-height: 44px; max-width: 100%; padding-block: 9px; border-bottom: 1px solid currentColor; color: inherit; font-size: 13px; line-height: 1.5; font-weight: 600; letter-spacing: .015em; }
body .aphc-home .ap3-link b { font-size: 22px; line-height: 1; font-weight: 400; }
body .aphc-home .ap3-section :focus-visible { outline: 3px solid #007c86; outline-offset: 5px; }
body .aphc-home :is(.ap3-repertoire,.ap3-project,.ap3-contact) :focus-visible { outline-color: #6fefff; }
body .aphc-home .ap3-reveal { opacity: 1; visibility: visible; }

/* 02 / A POSTER BETWEEN SCENES — TYPE DOES THE WORK */
body .aphc-home .ap3-opening { background: #eeeae2; padding-top: 47px; padding-bottom: 41px; }
body .aphc-home .ap3-opening-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 45px; }
body .aphc-home .ap3-opening-top > p:last-child { max-width: 470px; font-size: 15px; line-height: 1.7; color: #5c685d; }
body .aphc-home h2.ap3-opening-title { margin-top: 34px; color: #23322c; font: 700 clamp(60px,8.8vw,149px)/.84 Arial,Helvetica,sans-serif; letter-spacing: -.075em; text-transform: uppercase; }
body .aphc-home .ap3-opening-title > span { display: block; }
body .aphc-home .ap3-opening-title > span + span { margin-top: 7px; color: transparent; -webkit-text-stroke: 1.4px #465c4d; paint-order: stroke fill; }
body .aphc-home .ap3-quicklinks { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 33px; border-top: 1px solid #b9c5b6; }
body .aphc-home .ap3-quicklinks > a { display: flex; align-items: center; justify-content: space-between; gap: 25px; min-height: 74px; padding: 14px 28px; border-bottom: 1px solid #b9c5b6; color: #2b4032; font-size: 14px; font-weight: 500; line-height: 1.5; }
body .aphc-home .ap3-quicklinks > a:first-child { padding-left: 0; }
body .aphc-home .ap3-quicklinks > a:last-child { padding-right: 0; }
body .aphc-home .ap3-quicklinks > a + a { border-left: 1px solid #b9c5b6; }
body .aphc-home .ap3-quicklinks b { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid #8fa38e; border-radius: 50%; color: #4d6a50; font-size: 22px; line-height: 1; font-weight: 400; flex-shrink: 0; transition: background .22s ease,color .22s ease; }

/* 03 / SERVICE CINEMA — PANORAMA ABOVE A TACTILE SIX-FRAME FILMSTRIP */
body .aphc-home .ap3-repertoire { --ap3-ink: #f4f1e7; --ap3-muted: #b6c3b6; --ap3-line: #667369; background: #16211d; }
body .aphc-home .ap3-section-head { display: grid; grid-template-columns: 1.3fr .75fr; gap: 55px; align-items: end; margin-bottom: 38px; }
body .aphc-home .ap3-section-head > div:last-child > p,
body .aphc-home .ap3-section-head > p { max-width: 440px; justify-self: end; color: #b8c4b9; font-size: 16px; line-height: 1.8; }
body .aphc-home .ap3-section-head h2.ap3-title { font-size: clamp(44px,5.2vw,87px); }
body .aphc-home .ap3-service-cinema { border: 1px solid #8fa18f66; background: #111d19; }
body .aphc-home .ap3-service-stage { position: relative; }
body .aphc-home .ap3-service-ready .ap3-service-stage { min-height: clamp(520px,43vw,690px); }
body .aphc-home .ap3-service-panel { position: relative; min-height: 600px; overflow: hidden; isolation: isolate; background: #192d22; }
body .aphc-home .ap3-service-panel + .ap3-service-panel { border-top: 1px solid #a5b6a177; }
body .aphc-home .ap3-service-ready .ap3-service-panel { min-height: clamp(520px,43vw,690px); }
body .aphc-home .ap3-service-visual { position: absolute; z-index: -3; inset: 0; background: #192d22; }
body .aphc-home .ap3-service-visual img { width: 100%; height: 100%; object-fit: cover; object-position: 65% center; }
body .aphc-home .ap3-service-visual > :is(small,figcaption) { position: absolute; z-index: 3; top: 23px; right: 25px; padding: 5px 9px; color: #e4f1dd; background: #0b1b1bd9; font-size: 12px; line-height: 1.5; }
body .aphc-home .ap3-service-shade { position: absolute; z-index: -2; inset: 0; background: linear-gradient(90deg,#071614f2 0%,#0a1913db 30%,#0a1b156e 59%,#0b1d161a 100%),linear-gradient(0deg,#091a14b3,transparent 70%); pointer-events: none; }
body .aphc-home .ap3-service-story { position: relative; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; width: 62%; min-height: inherit; padding: clamp(35px,4.2vw,72px); color: #f7f4e8; }
body .aphc-home .ap3-service-story > span:first-child { display: inline-flex; align-items: center; justify-content: center; min-width: 42px; height: 31px; padding-inline: 9px; margin-bottom: 23px; border: 1px solid #adc3ad88; color: #cce7cf; font-size: 12px; line-height: 1; letter-spacing: .08em; }
body .aphc-home .ap3-service-story > p:first-of-type { color: #b3dbcc; font-size: 12px; line-height: 1.7; font-weight: 500; letter-spacing: .11em; text-transform: uppercase; }
body .aphc-home .ap3-service-story h3 { max-width: 710px; margin-top: 18px; color: #f7f4e8; font: 700 clamp(47px,5.1vw,83px)/.98 Arial,Helvetica,sans-serif; letter-spacing: -.06em; }
body .aphc-home .ap3-service-story > p:last-of-type { max-width: 490px; margin-top: 24px; color: #d7e3d8; font-size: 16px; line-height: 1.75; letter-spacing: 0; text-transform: none; }
body .aphc-home .ap3-service-story > :is(.ap3-btn,.ap3-link) { margin-top: 28px; }
body .aphc-home .ap3-service-story .ap3-btn { background: #6fefff; color: #111a3d; border-color: #6fefff; }
body .aphc-home .ap3-service-story .ap3-btn b { color: #111a3d; }
body .aphc-home .ap3-service-selector,
body .aphc-home .ap3-service-selector > nav { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); background: #eeeae2; }
body .aphc-home .ap3-service-selector > nav { grid-column: 1 / -1; }
body .aphc-home .ap3-service-cinema:not(.ap3-service-ready) .ap3-service-selector { display: none; }
body .aphc-home .ap3-service-selector button { position: relative; display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 12px; min-height: 120px; padding: 18px 19px 20px; border: 0; border-top: 3px solid transparent; border-radius: 0; background: #eeeae2; color: #314734; text-align: left; box-shadow: none; transition: background .2s ease,color .2s ease,border-color .2s ease; }
body .aphc-home .ap3-service-selector button + button { border-left: 1px solid #c3cec0; }
body .aphc-home .ap3-service-selector button > small { color: #4f674c; font-size: 12px; line-height: 1.5; letter-spacing: .04em; }
body .aphc-home .ap3-service-selector button strong { max-width: calc(100% - 20px); font: 500 clamp(17px,1.5vw,23px)/1.15 Arial,Helvetica,sans-serif; letter-spacing: -.025em; }
body .aphc-home .ap3-service-selector button > span:last-child { position: absolute; right: 15px; bottom: 22px; color: #6d8464; font-size: 21px; line-height: 1; }
body .aphc-home .ap3-service-selector button:is(.is-active,[aria-pressed="true"]) { background: #111a3d; color: #fff; border-top-color: #6fefff; }
body .aphc-home .ap3-service-selector button:is(.is-active,[aria-pressed="true"]) :is(small,span) { color: #93e6ec; }
body .aphc-home .ap3-service-selector button:not(.is-active):not([aria-pressed="true"]):focus-visible { outline: 3px solid #111a3d; outline-offset: -6px; }
body .aphc-home .ap3-service-selector button:is(.is-active,[aria-pressed="true"]):focus-visible { outline: 3px solid #6fefff; outline-offset: -6px; }

body .aphc-home .ap3-service-foot { display: flex; justify-content: space-between; align-items: center; gap: 30px; margin-top: 26px; padding-top: 21px; border-top: 1px solid #536b57; }
body .aphc-home .ap3-service-foot > p { color: #b6c7b4; font-size: 15px; line-height: 1.7; }
body .aphc-home .ap3-service-foot .ap3-link { flex-shrink: 0; color: #d6ebd1; }

/* 04 / A DIFFERENT RIDE — TYPE AND SPACE, NEVER MADE-UP STOCK */
body .aphc-home .ap3-preowned { --ap3-muted: #53654e; background: #dfe6dc; }
body .aphc-home .ap3-preowned-head { display: grid; grid-template-columns: 1.35fr .65fr; gap: 60px; align-items: end; }
body .aphc-home .ap3-preowned-head h2.ap3-title { font-size: clamp(43px,4.9vw,82px); }
body .aphc-home .ap3-preowned-head > div > p:not(.ap3-kicker) { max-width: 560px; margin-top: 23px; color: #4e6749; font-size: 16px; line-height: 1.75; }
body .aphc-home .ap3-preowned-head > .ap3-btn { justify-self: end; margin-bottom: 3px; }
body .aphc-home .ap3-owner-gates { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 46px; border-block: 1px solid #a8b7a1; }
body .aphc-home .ap3-owner-gates > a { display: grid; grid-template-columns: 130px 1fr 46px; align-items: center; gap: 25px; min-height: 220px; padding: 28px 35px 28px 0; color: #263f2d; }
body .aphc-home .ap3-owner-gates > a + a { padding-left: 35px; padding-right: 0; border-left: 1px solid #a8b7a1; }
body .aphc-home .ap3-wheel-number { color: #7b8c6e; font: 700 clamp(91px,8.8vw,144px)/.85 Arial,Helvetica,sans-serif; letter-spacing: -.09em; }
body .aphc-home .ap3-owner-gates small { display: block; color: #50684a; font-size: 12px; line-height: 1.5; font-weight: 500; letter-spacing: .08em; }
body .aphc-home .ap3-owner-gates h3 { margin-top: 10px; font: 500 clamp(24px,2.2vw,34px)/1.1 Arial,Helvetica,sans-serif; letter-spacing: -.04em; }
body .aphc-home .ap3-owner-gates p { margin-top: 12px; color: #4e6747; font-size: 14px; line-height: 1.65; }
body .aphc-home .ap3-owner-gates > a > b { display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid #819b76; border-radius: 50%; color: #4a6a44; font-size: 25px; line-height: 1; font-weight: 400; transition: background .2s ease,color .2s ease; }
body .aphc-home .ap3-availability-note { margin-top: 23px; color: #506749; font-size: 13px; line-height: 1.7; }
body .aphc-home .ap3-availability-note a { border-bottom: 1px solid currentColor; }
body .aphc-home .ap3-preowned .ap3-wrap > .ap3-note { margin-top: 13px; }
body .aphc-home .ap3-vehicle-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin-top: 40px; }
body .aphc-home .ap3-vehicle-card { min-width: 0; background: #f7f9f1; border: 1px solid #becbb4; color: #283f2b; }
body .aphc-home .ap3-vehicle-media { position: relative; display: block; aspect-ratio: 1.4; overflow: hidden; background: #cbd7c3; }
body .aphc-home .ap3-vehicle-media img { width: 100%; height: 100%; object-fit: cover; filter: none; mix-blend-mode: normal; transform: none; transition: transform .6s cubic-bezier(.2,.7,.3,1); }
body .aphc-home .ap3-vehicle-media > span { position: absolute; z-index: 1; top: 14px; left: 14px; padding: 5px 9px; background: #f3f8e9; color: #35552c; border: 1px solid #c8d5be; font-size: 12px; line-height: 1.5; }
body .aphc-home .ap3-vehicle-media > .ap3-photo-pending { inset: 0; display: grid; place-items: center; padding: 55px 25px; border: 0; background: #cbd7c3; color: #425e39; font-size: 15px; }
body .aphc-home .ap3-vehicle-body { padding: 24px; }
body .aphc-home .ap3-vehicle-body > small { color: #566e4b; font-size: 12px; line-height: 1.5; }
body .aphc-home .ap3-vehicle-body h3 { margin-top: 10px; font: 500 28px/1.15 Arial,Helvetica,sans-serif; letter-spacing: -.035em; }
body .aphc-home .ap3-vehicle-body dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-top: 23px; padding-bottom: 20px; border-bottom: 1px solid #c7d5bc; }
body .aphc-home .ap3-vehicle-body dt { color: #566e4b; font-size: 12px; line-height: 1.5; }
body .aphc-home .ap3-vehicle-body dd { margin-top: 4px; color: #38592f; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
body .aphc-home .ap3-vehicle-foot { display: flex; justify-content: space-between; align-items: center; gap: 15px; padding-top: 16px; }
body .aphc-home .ap3-vehicle-foot strong { font-size: 22px; line-height: 1.4; font-weight: 500; letter-spacing: -.03em; }
body .aphc-home .ap3-vehicle-foot a { display: inline-flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; font-size: 13px; font-weight: 600; }

/* 05 / THE COLOUR SHELF — ORIGINAL ARTWORK, DIFFERENT SCALES */
body .aphc-home .ap3-colour { background: #ede4e1; --ap3-muted: #6f625b; --ap3-line: #c9bcb5; }
body .aphc-home .ap3-colour-heading { display: grid; grid-template-columns: 1.2fr .8fr; gap: 70px; align-items: end; }
body .aphc-home .ap3-colour-heading h2.ap3-title { font-size: clamp(47px,6vw,98px); }
body .aphc-home .ap3-colour-heading > div:last-child > p:not(.ap3-kicker),
body .aphc-home .ap3-colour-heading > p { max-width: 470px; color: #705f55; font-size: 16px; line-height: 1.8; }
body .aphc-home .ap3-colour-heading .ap3-link { margin-top: 16px; }
body .aphc-home .ap3-colour-shelf { display: grid; grid-template-columns: .88fr 1.14fr 1fr; gap: 32px; align-items: start; margin-top: 46px; }
body .aphc-home .ap3-colour-shelf > a { display: block; color: #443a35; }
body .aphc-home .ap3-colour-shelf > a:first-child { margin-top: 64px; }
body .aphc-home .ap3-colour-shelf > a:nth-child(3) { margin-top: 108px; }
body .aphc-home .ap3-colour-photo { display: block; position: relative; background: #f7f4ee; border: 1px solid #c7bdb5; }
body .aphc-home .ap3-colour-photo img { display: block; width: 100%; height: 430px; object-fit: contain; background: #faf9f4; filter: none; mix-blend-mode: normal; transform: none; }
body .aphc-home .ap3-colour-shelf > a:nth-child(2) .ap3-colour-photo img { height: 525px; }
body .aphc-home .ap3-colour-shelf > a:nth-child(3) .ap3-colour-photo img { height: 370px; }
body .aphc-home .ap3-colour-caption { display: grid; grid-template-columns: 1fr 24px; gap: 9px 14px; align-items: center; padding: 19px 0 0; border: 0; color: #4a4039; }
body .aphc-home .ap3-colour-photo figcaption { padding: 17px 19px; border-top: 1px solid #d5c9c1; background: #f4efea; }
body .aphc-home .ap3-colour-caption > small { grid-column: 1 / -1; color: #715e52; font-size: 12px; line-height: 1.5; }
body .aphc-home .ap3-colour-caption > strong { grid-column: 1; grid-row: 2; font-size: clamp(18px,1.65vw,25px); font-weight: 500; line-height: 1.2; letter-spacing: -.03em; }
body .aphc-home .ap3-colour-caption > b { grid-column: 2; grid-row: 2; color: #7c675c; font-size: 23px; font-weight: 400; line-height: 1; }
body .aphc-home .ap3-colour-bottom { display: flex; justify-content: space-between; align-items: center; gap: 35px; margin-top: 35px; padding-top: 20px; border-top: 1px solid #c3b5ad; }
body .aphc-home .ap3-colour-bottom .ap3-note { max-width: 800px; }
body .aphc-home .ap3-colour-bottom .ap3-link { flex-shrink: 0; }
body .aphc-home .ap3-studio-link { display: grid; grid-template-columns: 62px 1fr 51px; gap: 27px; align-items: center; padding: 25px 29px; margin-top: 34px; border: 1px solid #c3b5ad; background: #f5eee8; color: #463b33; }
body .aphc-home .ap3-studio-link > svg { width: 58px; height: 58px; color: #947968; }
body .aphc-home .ap3-studio-link > span:first-child { display: grid; place-items: center; width: 58px; height: 58px; color: #a0806b; font-size: 54px; font-weight: 300; line-height: 1; }
body .aphc-home .ap3-studio-link h3 { font: 500 clamp(25px,2.5vw,39px)/1.15 Arial,Helvetica,sans-serif; letter-spacing: -.04em; }
body .aphc-home .ap3-studio-link small { display: block; margin-top: 9px; max-width: 850px; color: #756358; font-size: 12px; line-height: 1.7; }
body .aphc-home .ap3-studio-link > b { display: grid; place-items: center; width: 51px; height: 51px; border: 1px solid #ac9586; border-radius: 50%; color: #826653; font-size: 27px; font-weight: 400; line-height: 1; transition: background .2s ease,color .2s ease; }

/* 06 / A RESTORATION THEATRE — FILM FIRST, SPECIFICATION SECOND */
body .aphc-home .ap3-project { --ap3-ink: #efeee4; --ap3-muted: #aebdaf; --ap3-line: #576a59; background: #151f1c; }
body .aphc-home .ap3-project-top { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding-top: 17px; border-top: 1px solid #536657; }
body .aphc-home .ap3-project-top .ap3-link { border-bottom: 0; }
body .aphc-home :is(h2.ap3-project-title,.ap3-project-title h2) { margin-top: 30px; margin-bottom: 38px; font: 700 clamp(64px,8.2vw,138px)/.88 Arial,Helvetica,sans-serif; letter-spacing: -.07em; text-transform: uppercase; color: #eef0e5; }
body .aphc-home .ap3-project-title > span { display: block; }
body .aphc-home .ap3-project-title > span { color: transparent; -webkit-text-stroke: 1.2px #b0c4ae; paint-order: stroke fill; }
body .aphc-home .ap3-film-layout { display: grid; grid-template-columns: 1.4fr .8fr; gap: clamp(35px,5vw,85px); align-items: center; }
body .aphc-home .ap3-film-screen { display: block; position: relative; overflow: hidden; aspect-ratio: 1.6; background: #243e2d; border: 1px solid #708771; }
body .aphc-home .ap3-film-screen::after { content: ''; position: absolute; inset: 45% 0 0; background: linear-gradient(transparent,#07180fdb); pointer-events: none; }
body .aphc-home .ap3-film-screen figure { width: 100%; height: 100%; }
body .aphc-home .ap3-film-screen img { display: block; width: 100%; height: 100%; object-fit: cover; opacity: .9; transition: transform .8s cubic-bezier(.2,.7,.3,1),opacity .4s ease; }
body .aphc-home .ap3-play { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 5px; position: absolute; z-index: 1; left: 50%; top: 50%; width: 96px; height: 96px; border: 1px solid #edf7e1b3; border-radius: 50%; background: #142c23c7; transform: translate(-50%,-50%); color: #f3f5e9; font-size: 12px; line-height: 1.5; letter-spacing: .06em; backdrop-filter: blur(5px); transition: background .2s ease,color .2s ease; }
body .aphc-home .ap3-play > :is(b,span) { font-size: 20px; font-weight: 400; line-height: 1; }
body .aphc-home .ap3-film-caption { position: absolute; z-index: 1; left: 24px; bottom: 22px; right: 24px; display: flex; justify-content: space-between; gap: 20px; color: #e6efde; font-size: 12px; line-height: 1.7; letter-spacing: .06em; }
body .aphc-home .ap3-project-facts .ap3-kicker { color: #c8a98a; }
body .aphc-home .ap3-project-facts h3 { margin-top: 20px; color: #eff2e7; font: 500 clamp(32px,3.1vw,49px)/1.05 Arial,Helvetica,sans-serif; letter-spacing: -.05em; }
body .aphc-home .ap3-project-facts > p:not(.ap3-kicker) { max-width: 460px; margin-top: 22px; color: #b5c5b4; font-size: 15px; line-height: 1.8; }
body .aphc-home .ap3-project-facts dl { display: flex; flex-wrap: wrap; gap: 18px 36px; margin-top: 26px; padding-block: 19px; border-block: 1px solid #5a715b; }
body .aphc-home .ap3-project-facts dt { color: #b8c9b4; font-size: 12px; line-height: 1.5; }
body .aphc-home .ap3-project-facts dd { margin-top: 6px; color: #eef5e5; font-size: 23px; line-height: 1.3; letter-spacing: -.03em; }
body .aphc-home .ap3-project-facts .ap3-btn { margin-top: 26px; background: #6fefff; border-color: #6fefff; color: #111a3d; }
body .aphc-home .ap3-project-facts .ap3-btn b { color: #111a3d; }
body .aphc-home .ap3-archive-footer { display: grid; grid-template-columns: 155px 155px 1fr auto; gap: 20px; align-items: center; margin-top: 29px; padding-top: 24px; border-top: 1px solid #536657; }
body .aphc-home .ap3-archive-footer > figure { display: block; border: 1px solid #50644e; background: #233a28; }
body .aphc-home .ap3-archive-footer img { display: block; width: 100%; height: 77px; object-fit: contain; background: #233a28; }
body .aphc-home .ap3-archive-footer figcaption { padding: 7px 10px; border-top: 1px solid #50644e; color: #c6d6bc; font-size: 12px; line-height: 1.5; }
body .aphc-home .ap3-archive-footer .ap3-note { max-width: 500px; color: #a9bca7; }
body .aphc-home .ap3-archive-footer .ap3-link { margin-left: 15px; }

/* 07 / A SINGLE LINE FROM THE FIRST VISIT TO THE RIDE HOME */
body .aphc-home .ap3-journey { background: #f0f0e7; }
body .aphc-home .ap3-journey-grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: clamp(45px,7vw,120px); align-items: start; }
body .aphc-home .ap3-journey h2.ap3-title { max-width: 680px; font-size: clamp(43px,4.3vw,72px); }
body .aphc-home .ap3-journey-grid > div:first-child > p:not(.ap3-kicker) { margin-top: 25px; max-width: 490px; color: #52694c; font-size: 16px; line-height: 1.8; }
body .aphc-home .ap3-journey-grid > div:first-child > :is(.ap3-link,.ap3-btn) { margin-top: 24px; }
body .aphc-home .ap3-steps { padding-top: 5px; }
body .aphc-home .ap3-step { position: relative; padding: 5px 0 12px; }
body .aphc-home .ap3-step:not(:last-child)::before { content: ''; position: absolute; z-index: 0; left: 18px; top: 48px; bottom: -7px; width: 1px; background: #b7c7ac; }
body .aphc-home .ap3-step > summary { display: grid; grid-template-columns: 37px 1fr 25px; gap: 20px; align-items: center; min-height: 65px; list-style: none; cursor: pointer; }
body .aphc-home .ap3-step > summary::-webkit-details-marker { display: none; }
body .aphc-home .ap3-step > summary::marker { content: ''; }
body .aphc-home .ap3-step summary > span { display: grid; place-items: center; position: relative; z-index: 1; width: 37px; height: 37px; border: 1px solid #acbea0; border-radius: 50%; background: #f0f0e7; color: #526b49; font-size: 12px; font-weight: 500; line-height: 1; }
body .aphc-home .ap3-step summary h3 { font: 500 clamp(19px,1.8vw,28px)/1.25 Arial,Helvetica,sans-serif; letter-spacing: -.03em; color: #304b30; }
body .aphc-home .ap3-step summary > b { display: grid; place-items: center; width: 25px; height: 25px; color: #68875c; font-size: 24px; font-weight: 400; line-height: 1; transition: transform .25s ease; }
body .aphc-home .ap3-step[open] summary > span { background: #203c2a; color: #b7ece0; border-color: #203c2a; }
body .aphc-home .ap3-step[open] summary > b { transform: rotate(45deg); }
body .aphc-home .ap3-step > p { margin: 6px 30px 7px 57px; max-width: 620px; color: #556c4d; font-size: 15px; line-height: 1.8; }

/* 08 / THE LAST SCENE OPENS A CONVERSATION */
body .aphc-home .ap3-contact.aphc-contact { --ap3-ink: #f1f3e8; --ap3-muted: #c3d4bd; --ap3-line: #67835e; background: #1d3b31; color: #f1f3e8; }
body .aphc-home .ap3-contact-layout { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(45px,7vw,120px); align-items: center; }
body .aphc-home .ap3-contact h2.ap3-title { max-width: 690px; margin-top: 24px; margin-bottom: 0; font-size: clamp(51px,5.1vw,85px); color: #f1f3e8; }
body .aphc-home .ap3-contact-copy > p:not(.ap3-kicker) { max-width: 510px; margin-top: 25px; color: #c5d8c0; font-size: 16px; line-height: 1.8; }
body .aphc-home .ap3-contact address { max-width: 530px; margin-top: 25px; color: #b6cfb0; font-size: 14px; line-height: 1.8; font-style: normal; }
body .aphc-home .ap3-contact-links { display: flex; flex-wrap: wrap; align-items: center; gap: 5px 24px; margin-top: 18px; }
body .aphc-home .ap3-contact-links .ap3-link { color: #e0eed7; font-size: 13px; }
body .aphc-home .ap3-visit-links { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 25px; margin-top: 26px; padding-top: 20px; border-top: 1px solid #6b885f; }
body .aphc-home .ap3-visit-links a { display: inline-flex; align-items: center; gap: 15px; min-height: 44px; color: #c9ddbe; font-size: 13px; line-height: 1.6; }
body .aphc-home .ap3-contact-photo { width: min(240px,100%); margin-top: 25px; }
body .aphc-home .ap3-contact-photo img { display: block; width: 100%; height: 140px; object-fit: cover; border: 1px solid #77916d; }
body .aphc-home .ap3-contact-photo figcaption { margin-top: 7px; color: #bed0b3; font-size: 12px; line-height: 1.5; }
body .aphc-home .ap3-form-card { padding: clamp(30px,3.3vw,49px); border: 1px solid #d2ddc6; background: #f3f3e9; color: #2c402d; }
body .aphc-home .ap3-form-card :focus-visible { outline: 3px solid #007c86; outline-offset: 4px; }
body .aphc-home .ap3-form-card > .ap3-kicker { color: #5a6e4f; }
body .aphc-home .ap3-form-card > h3 { margin-top: 14px; color: #2a402b; font: 500 clamp(30px,2.6vw,42px)/1.1 Arial,Helvetica,sans-serif; letter-spacing: -.045em; }
body .aphc-home .ap3-form-card > p:not(.ap3-kicker) { max-width: 580px; margin-top: 16px; color: #566a4d; font-size: 14px; line-height: 1.8; }
body .aphc-home .ap3-contact .aphc-form { display: grid; gap: 20px; padding: 0; margin-top: 27px; }
body .aphc-home .ap3-contact .ap-build-cta-field { display: grid; gap: 9px; margin: 0; color: #3f5b37; }
body .aphc-home .ap3-contact .ap-build-cta-field > span { color: #45603e; font-size: 13px; line-height: 1.5; font-weight: 500; letter-spacing: 0; }
body .aphc-home .ap3-contact .ap-build-cta-field > span b { color: #4d6b40; }
body .aphc-home .ap3-contact .ap-build-cta-field > div { display: flex; align-items: center; gap: 12px; min-height: 55px; padding: 0 15px; border: 1px solid #b6c8a8; border-radius: 0; background: #fbfcf7; box-shadow: none; }
body .aphc-home .ap3-contact .ap-build-cta-field i { display: none; }
body .aphc-home .ap3-contact .ap-build-cta-field input { display: block; width: 100%; min-width: 0; max-width: 100%; height: auto; padding: 13px 0; margin: 0; border: 0; border-radius: 0; box-shadow: none; background: transparent; color: #30462b; font: 400 16px/1.6 Arial,Helvetica,sans-serif; }
body .aphc-home .ap3-contact .ap-build-cta-field input::placeholder { color: #637454; opacity: 1; }
body .aphc-home .ap3-contact .ap-build-cta-field > div:focus-within { border-color: #217a7f; box-shadow: 0 0 0 2px #a2e6e34d; }
body .aphc-home .ap3-contact .ap-build-cta-phone strong { padding-right: 13px; border-right: 1px solid #bbcdad; margin: 0; color: #506d44; font: 400 15px/1.5 Arial,Helvetica,sans-serif; white-space: nowrap; }
body .aphc-home .ap3-contact .ap-build-cta-submit { display: flex; justify-content: space-between; align-items: center; gap: 22px; width: 100%; min-height: 57px; padding: 17px 20px; border: 1px solid #111a3d; border-radius: 0; background: #111a3d; color: #fff; box-shadow: none; transform: none; font: 600 13px/1.5 Arial,Helvetica,sans-serif; letter-spacing: .015em; }
body .aphc-home .ap3-contact .ap-build-cta-submit b { color: #6fefff; font-size: 23px; font-weight: 400; line-height: 1; }
body .aphc-home .ap3-contact .ap-build-cta-submit:disabled { opacity: .65; cursor: wait; }
body .aphc-home .ap3-contact .ap-build-cta-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
body .aphc-home .ap3-contact .ap-build-cta-ajax-status { padding: 12px 14px; border: 1px solid #bd9471; color: #815126; background: #fcf7ec; font-size: 14px; line-height: 1.7; }
body .aphc-home .ap3-contact .ap-build-cta-ajax-status:empty { display: none; }
body .aphc-home .ap3-contact .ap-build-cta-ajax-status.is-success { color: #2b6348; border-color: #8bab97; background: #edf5eb; }
body .aphc-home .ap3-contact .ap3-form-card > .ap3-note { margin-top: 19px; color: #596e4e; font-size: 12px; line-height: 1.7; }
body .aphc-home .ap3-contact .ap3-form-card > .ap3-note a { color: #41623a; text-decoration: underline; text-underline-offset: 3px; }

/* 09 / RESPONSIVE ART DIRECTION — NATIVE SCROLLING AT EVERY SIZE */
@media (min-width: 1800px) {
  body .aphc-home .ap3-service-story { padding: 72px; }
  body .aphc-home .ap3-service-selector button { min-height: 133px; padding: 22px 25px; }
  body .aphc-home .ap3-service-selector button > span:last-child { right: 23px; bottom: 26px; }
  body .aphc-home .ap3-colour-photo img { height: 470px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(2) .ap3-colour-photo img { height: 575px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(3) .ap3-colour-photo img { height: 405px; }
}
@media (max-width: 1200px) {
  body .aphc-home .ap3-wrap { width: calc(100% - 72px); }
  body .aphc-home .ap3-section { padding-block: 78px; }
  body .aphc-home .ap3-opening { padding-top: 40px; padding-bottom: 34px; }
  body .aphc-home .ap3-opening-top > p:last-child { max-width: 420px; }
  body .aphc-home .ap3-section-head { gap: 35px; grid-template-columns: 1.2fr .8fr; }
  body .aphc-home .ap3-service-story { padding: 42px; width: 65%; }
  body .aphc-home .ap3-service-selector button { padding-inline: 15px; min-height: 113px; }
  body .aphc-home .ap3-service-selector button strong { font-size: 18px; }
  body .aphc-home .ap3-service-selector button > span:last-child { right: 11px; bottom: 21px; font-size: 19px; }
  body .aphc-home .ap3-owner-gates > a { grid-template-columns: 105px 1fr 40px; gap: 20px; padding-right: 25px; min-height: 205px; }
  body .aphc-home .ap3-owner-gates > a + a { padding-left: 25px; padding-right: 0; }
  body .aphc-home .ap3-owner-gates > a > b { width: 40px; height: 40px; font-size: 23px; }
  body .aphc-home .ap3-vehicle-grid { gap: 20px; }
  body .aphc-home .ap3-vehicle-body { padding: 20px; }
  body .aphc-home .ap3-vehicle-body h3 { font-size: 25px; }
  body .aphc-home .ap3-vehicle-foot { display: block; }
  body .aphc-home .ap3-vehicle-foot a { width: 100%; margin-top: 4px; }
  body .aphc-home .ap3-colour-heading { gap: 40px; }
  body .aphc-home .ap3-colour-shelf { gap: 23px; }
  body .aphc-home .ap3-colour-photo img { height: 370px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(2) .ap3-colour-photo img { height: 450px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(3) .ap3-colour-photo img { height: 320px; }
  body .aphc-home .ap3-colour-photo figcaption { padding: 14px; gap: 10px; }
  body .aphc-home .ap3-film-layout { gap: 40px; grid-template-columns: 1.3fr .9fr; }
  body .aphc-home .ap3-project-facts dl { gap: 17px 27px; }
  body .aphc-home .ap3-archive-footer { grid-template-columns: 130px 130px 1fr auto; gap: 17px; }
  body .aphc-home .ap3-archive-footer .ap3-link { margin-left: 0; }
  body .aphc-home .ap3-journey-grid { gap: 55px; }
  body .aphc-home .ap3-contact-layout { gap: 55px; }
}
@media (max-width: 960px) {
  body .aphc-home .ap3-wrap { width: calc(100% - 48px); }
  body .aphc-home .ap3-section { padding-block: 66px; }
  body .aphc-home .ap3-opening { padding-top: 34px; padding-bottom: 28px; }
  body .aphc-home .ap3-opening-top { gap: 35px; }
  body .aphc-home .ap3-opening-top > p:last-child { max-width: 390px; font-size: 14px; }
  body .aphc-home h2.ap3-opening-title { font-size: clamp(65px,9vw,90px); }
  body .aphc-home .ap3-quicklinks { margin-top: 30px; }
  body .aphc-home .ap3-quicklinks > a { min-height: 71px; padding-inline: 21px; font-size: 13px; gap: 15px; }
  body .aphc-home .ap3-quicklinks b { width: 31px; height: 31px; font-size: 20px; }
  body .aphc-home .ap3-section-head { grid-template-columns: 1.1fr .8fr; gap: 30px; }
  body .aphc-home .ap3-section-head h2.ap3-title { font-size: clamp(43px,5.4vw,56px); }
  body .aphc-home .ap3-section-head > p { font-size: 15px; }
  body .aphc-home .ap3-service-ready .ap3-service-panel,body .aphc-home .ap3-service-ready .ap3-service-stage { min-height: 550px; }
  body .aphc-home .ap3-service-story { padding: 34px; width: 74%; }
  body .aphc-home .ap3-service-story h3 { font-size: clamp(49px,6.6vw,65px); }
  body .aphc-home .ap3-service-story > p:last-of-type { font-size: 15px; max-width: 420px; }
  body .aphc-home .ap3-service-selector,
  body .aphc-home .ap3-service-selector > nav { grid-template-columns: repeat(6,minmax(148px,1fr)); overflow-x: auto; scrollbar-width: thin; scrollbar-color: #6d8970 #dddeda; overscroll-behavior-inline: contain; scroll-snap-type: x proximity; }
  body .aphc-home .ap3-service-selector > nav { overflow-x: visible; }
  body .aphc-home .ap3-service-selector button { min-height: 112px; padding-inline: 17px; scroll-snap-align: start; }
  body .aphc-home .ap3-service-selector button strong { font-size: 19px; }
  body .aphc-home .ap3-preowned-head { gap: 35px; grid-template-columns: 1.4fr .7fr; }
  body .aphc-home .ap3-preowned-head h2.ap3-title { font-size: clamp(43px,5vw,56px); }
  body .aphc-home .ap3-preowned-head > .ap3-btn { gap: 20px; padding-inline: 17px; }
  body .aphc-home .ap3-owner-gates { margin-top: 32px; }
  body .aphc-home .ap3-owner-gates > a { grid-template-columns: 77px 1fr 33px; gap: 15px; padding-right: 20px; min-height: 190px; }
  body .aphc-home .ap3-owner-gates > a + a { padding-left: 20px; }
  body .aphc-home .ap3-wheel-number { font-size: 86px; }
  body .aphc-home .ap3-owner-gates h3 { font-size: 25px; }
  body .aphc-home .ap3-owner-gates > a > b { width: 33px; height: 33px; font-size: 21px; }
  body .aphc-home .ap3-owner-gates p { font-size: 13px; margin-top: 10px; }
  body .aphc-home .ap3-vehicle-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body .aphc-home .ap3-vehicle-card:last-child:nth-child(odd) { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; }
  body .aphc-home .ap3-vehicle-card:last-child:nth-child(odd) .ap3-vehicle-media { height: 100%; min-height: 240px; }
  body .aphc-home .ap3-colour-heading { gap: 30px; }
  body .aphc-home .ap3-colour-heading h2.ap3-title { font-size: clamp(47px,6vw,64px); }
  body .aphc-home .ap3-colour-heading > div:last-child > p:not(.ap3-kicker),body .aphc-home .ap3-colour-heading > p { font-size: 15px; }
  body .aphc-home .ap3-colour-shelf { gap: 18px; margin-top: 33px; }
  body .aphc-home .ap3-colour-shelf > a:first-child { margin-top: 42px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(3) { margin-top: 75px; }
  body .aphc-home .ap3-colour-photo img { height: 300px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(2) .ap3-colour-photo img { height: 365px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(3) .ap3-colour-photo img { height: 260px; }
  body .aphc-home .ap3-colour-photo figcaption { grid-template-columns: 19px 1fr 18px; gap: 8px; padding: 12px; }
  body .aphc-home .ap3-colour-caption > strong { font-size: 18px; }
  body .aphc-home .ap3-colour-caption > b { font-size: 20px; }
  body .aphc-home .ap3-studio-link { grid-template-columns: 50px 1fr 45px; gap: 22px; padding: 24px; }
  body .aphc-home .ap3-studio-link > :is(svg,span:first-child) { width: 50px; height: 50px; }
  body .aphc-home .ap3-studio-link > b { width: 45px; height: 45px; }
  body .aphc-home .ap3-film-layout { gap: 30px; grid-template-columns: 1.15fr .9fr; }
  body .aphc-home .ap3-project-facts h3 { font-size: 35px; }
  body .aphc-home .ap3-project-facts > p:not(.ap3-kicker) { font-size: 14px; margin-top: 18px; }
  body .aphc-home .ap3-project-facts dl { margin-top: 21px; padding-block: 16px; gap: 15px 20px; }
  body .aphc-home .ap3-project-facts dd { font-size: 21px; }
  body .aphc-home .ap3-project-facts .ap3-btn { padding-inline: 17px; gap: 18px; }
  body .aphc-home .ap3-play { width: 76px; height: 76px; }
  body .aphc-home .ap3-film-caption { left: 18px; right: 18px; bottom: 16px; font-size: 12px; }
  body .aphc-home .ap3-archive-footer { grid-template-columns: 110px 110px 1fr; gap: 17px; }
  body .aphc-home .ap3-archive-footer .ap3-link { grid-column: 3; justify-self: start; margin-top: -8px; }
  body .aphc-home .ap3-journey-grid { gap: 35px; grid-template-columns: .95fr 1.1fr; }
  body .aphc-home .ap3-journey h2.ap3-title { font-size: clamp(41px,4.7vw,54px); }
  body .aphc-home .ap3-journey-grid > div:first-child > p:not(.ap3-kicker) { font-size: 15px; }
  body .aphc-home .ap3-step > summary { grid-template-columns: 34px 1fr 23px; gap: 14px; }
  body .aphc-home .ap3-step summary > span { width: 34px; height: 34px; }
  body .aphc-home .ap3-step:not(:last-child)::before { left: 17px; }
  body .aphc-home .ap3-step summary h3 { font-size: 21px; }
  body .aphc-home .ap3-step > p { margin-left: 48px; margin-right: 20px; font-size: 14px; }
  body .aphc-home .ap3-contact-layout { gap: 35px; grid-template-columns: 1fr 1.05fr; }
  body .aphc-home .ap3-contact h2.ap3-title { font-size: clamp(45px,5.4vw,57px); }
  body .aphc-home .ap3-contact-copy > p:not(.ap3-kicker) { font-size: 15px; }
  body .aphc-home .ap3-form-card { padding: 29px; }
  body .aphc-home .ap3-form-card > h3 { font-size: 32px; }
}
@media (max-width: 740px) {
  body .aphc-home .ap3-section { padding-block: 58px; }
  body .aphc-home .ap3-opening { padding-top: 30px; padding-bottom: 27px; }
  body .aphc-home .ap3-opening-top { display: block; }
  body .aphc-home .ap3-opening-top > p:last-child { max-width: 550px; margin-top: 14px; font-size: 15px; }
  body .aphc-home h2.ap3-opening-title { margin-top: 30px; font-size: clamp(58px,10.3vw,79px); }
  body .aphc-home .ap3-quicklinks > a { padding: 14px 17px; font-size: 13px; gap: 13px; }
  body .aphc-home .ap3-quicklinks b { width: 28px; height: 28px; font-size: 19px; }
  body .aphc-home .ap3-section-head { grid-template-columns: 1fr; gap: 24px; margin-bottom: 29px; }
  body .aphc-home .ap3-section-head h2.ap3-title { font-size: clamp(44px,7.2vw,59px); }
  body .aphc-home .ap3-section-head > p,body .aphc-home .ap3-section-head > div:last-child > p { max-width: 570px; justify-self: start; font-size: 16px; }
  body .aphc-home .ap3-service-panel,body .aphc-home .ap3-service-ready .ap3-service-panel,body .aphc-home .ap3-service-ready .ap3-service-stage { min-height: 570px; }
  body .aphc-home .ap3-service-story { width: 87%; padding: 31px; padding-top: 80px; }
  body .aphc-home .ap3-service-story h3 { font-size: clamp(47px,8vw,61px); max-width: 510px; }
  body .aphc-home .ap3-service-story > p:last-of-type { max-width: 450px; font-size: 16px; }
  body .aphc-home .ap3-service-visual img { object-position: 62% center; }
  body .aphc-home .ap3-service-shade { background: linear-gradient(90deg,#0a1c16e0,#0d211973 72%),linear-gradient(0deg,#071a13ed,transparent 82%); }
  body .aphc-home .ap3-service-visual > :is(small,figcaption) { top: 17px; right: 17px; }
  body .aphc-home .ap3-service-selector,body .aphc-home .ap3-service-selector > nav { grid-template-columns: repeat(6,162px); }
  body .aphc-home .ap3-service-selector button { min-height: 108px; }
  body .aphc-home .ap3-preowned-head { grid-template-columns: 1fr; gap: 27px; }
  body .aphc-home .ap3-preowned-head h2.ap3-title { font-size: clamp(43px,7vw,57px); }
  body .aphc-home .ap3-preowned-head > .ap3-btn { justify-self: start; margin: 0; padding-inline: 21px; }
  body .aphc-home .ap3-preowned-head > div > p:not(.ap3-kicker) { max-width: 580px; font-size: 16px; margin-top: 21px; }
  body .aphc-home .ap3-owner-gates { grid-template-columns: 1fr; margin-top: 29px; }
  body .aphc-home .ap3-owner-gates > a { grid-template-columns: 105px 1fr 43px; min-height: 165px; gap: 25px; padding: 25px 0; }
  body .aphc-home .ap3-owner-gates > a + a { padding: 25px 0; border-left: 0; border-top: 1px solid #a8b7a1; }
  body .aphc-home .ap3-wheel-number { font-size: 111px; }
  body .aphc-home .ap3-owner-gates h3 { font-size: 29px; }
  body .aphc-home .ap3-owner-gates > a > b { width: 43px; height: 43px; font-size: 24px; }
  body .aphc-home .ap3-owner-gates p { font-size: 14px; }
  body .aphc-home .ap3-vehicle-grid { gap: 19px; }
  body .aphc-home .ap3-colour-heading { grid-template-columns: 1fr; gap: 23px; }
  body .aphc-home .ap3-colour-heading h2.ap3-title { font-size: clamp(49px,8vw,64px); }
  body .aphc-home .ap3-colour-heading > div:last-child > p:not(.ap3-kicker),body .aphc-home .ap3-colour-heading > p { max-width: 560px; font-size: 16px; }
  body .aphc-home .ap3-colour-shelf { gap: 15px; margin-top: 31px; }
  body .aphc-home .ap3-colour-photo img { height: 260px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(2) .ap3-colour-photo img { height: 320px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(3) .ap3-colour-photo img { height: 225px; }
  body .aphc-home .ap3-colour-shelf > a:first-child { margin-top: 35px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(3) { margin-top: 59px; }
  body .aphc-home .ap3-colour-photo figcaption { grid-template-columns: 1fr 19px; padding: 12px; gap: 8px; }
  body .aphc-home .ap3-colour-caption > small { grid-column: 1 / -1; }
  body .aphc-home .ap3-colour-caption > strong { font-size: 18px; }
  body .aphc-home .ap3-colour-bottom { display: block; margin-top: 28px; }
  body .aphc-home .ap3-colour-bottom .ap3-link { margin-top: 12px; }
  body .aphc-home .ap3-studio-link { grid-template-columns: 45px 1fr 42px; gap: 20px; padding: 23px; margin-top: 29px; }
  body .aphc-home .ap3-studio-link > :is(svg,span:first-child) { width: 45px; height: 45px; }
  body .aphc-home .ap3-studio-link > span:first-child { font-size: 45px; }
  body .aphc-home .ap3-studio-link h3 { font-size: 29px; }
  body .aphc-home .ap3-studio-link > b { width: 42px; height: 42px; font-size: 24px; }
  body .aphc-home :is(h2.ap3-project-title,.ap3-project-title h2) { font-size: clamp(59px,10vw,85px); margin-top: 28px; margin-bottom: 31px; }
  body .aphc-home .ap3-film-layout { grid-template-columns: 1fr; gap: 30px; }
  body .aphc-home .ap3-film-screen { aspect-ratio: 1.6; }
  body .aphc-home .ap3-project-facts h3 { font-size: 40px; max-width: 600px; margin-top: 17px; }
  body .aphc-home .ap3-project-facts > p:not(.ap3-kicker) { max-width: 600px; font-size: 16px; margin-top: 21px; }
  body .aphc-home .ap3-project-facts dl { max-width: 600px; gap: 20px 45px; }
  body .aphc-home .ap3-project-facts .ap3-btn { padding-inline: 22px; gap: 28px; margin-top: 23px; }
  body .aphc-home .ap3-archive-footer { grid-template-columns: 110px 110px 1fr; gap: 17px; margin-top: 27px; padding-top: 22px; }
  body .aphc-home .ap3-journey-grid { grid-template-columns: 1fr; gap: 30px; }
  body .aphc-home .ap3-journey h2.ap3-title { max-width: 590px; font-size: clamp(43px,7vw,59px); }
  body .aphc-home .ap3-journey-grid > div:first-child > p:not(.ap3-kicker) { max-width: 600px; font-size: 16px; margin-top: 22px; }
  body .aphc-home .ap3-journey-grid > div:first-child > :is(.ap3-link,.ap3-btn) { margin-top: 18px; }
  body .aphc-home .ap3-step > summary { min-height: 63px; grid-template-columns: 37px 1fr 25px; gap: 18px; }
  body .aphc-home .ap3-step summary > span { width: 37px; height: 37px; }
  body .aphc-home .ap3-step summary h3 { font-size: 24px; }
  body .aphc-home .ap3-step:not(:last-child)::before { left: 18px; }
  body .aphc-home .ap3-step > p { margin-left: 55px; max-width: 570px; font-size: 15px; }
  body .aphc-home .ap3-contact-layout { grid-template-columns: 1fr; gap: 37px; }
  body .aphc-home .ap3-contact h2.ap3-title { font-size: clamp(49px,8.5vw,68px); max-width: 640px; }
  body .aphc-home .ap3-contact-copy > p:not(.ap3-kicker) { max-width: 600px; font-size: 16px; margin-top: 22px; }
  body .aphc-home .ap3-contact address { margin-top: 20px; font-size: 15px; }
  body .aphc-home .ap3-contact-links { margin-top: 14px; }
  body .aphc-home .ap3-form-card { max-width: 680px; width: 100%; padding: 32px; }
  body .aphc-home .ap3-form-card > h3 { font-size: 38px; }
}
@media (max-width: 480px) {
  body .aphc-home .ap3-wrap { width: calc(100% - 40px); }
  body .aphc-home .ap3-section { padding-block: 49px; }
  body .aphc-home .ap3-opening { padding-top: 27px; padding-bottom: 21px; }
  body .aphc-home .ap3-section .ap3-kicker { font-size: 12px; letter-spacing: .07em; }
  body .aphc-home .ap3-opening-top > p:last-child { font-size: 14px; margin-top: 13px; }
  body .aphc-home h2.ap3-opening-title { font-size: clamp(45px,10.5vw,58px); line-height: .9; margin-top: 26px; letter-spacing: -.075em; }
  body .aphc-home .ap3-opening-title > span + span { -webkit-text-stroke-width: 1px; margin-top: 6px; }
  body .aphc-home .ap3-quicklinks { grid-template-columns: 1fr; margin-top: 24px; }
  body .aphc-home .ap3-quicklinks > a { min-height: 57px; padding: 10px 0; font-size: 14px; gap: 20px; }
  body .aphc-home .ap3-quicklinks > a + a { border-left: 0; }
  body .aphc-home .ap3-quicklinks b { width: 29px; height: 29px; font-size: 20px; }
  body .aphc-home .ap3-section-head { margin-bottom: 25px; gap: 20px; }
  body .aphc-home .ap3-section-head h2.ap3-title { font-size: clamp(41px,10.3vw,50px); }
  body .aphc-home .ap3-kicker + h2.ap3-title { margin-top: 19px; }
  body .aphc-home .ap3-section-head > p,body .aphc-home .ap3-section-head > div:last-child > p { font-size: 15px; }
  body .aphc-home .ap3-service-panel,body .aphc-home .ap3-service-ready .ap3-service-panel,body .aphc-home .ap3-service-ready .ap3-service-stage { min-height: 545px; }
  body .aphc-home .ap3-service-foot { display: block; margin-top: 22px; padding-top: 18px; }
  body .aphc-home .ap3-service-foot .ap3-link { margin-top: 10px; }
  body .aphc-home .ap3-service-story { width: 100%; padding: 80px 23px 34px; }
  body .aphc-home .ap3-service-story > span:first-child { margin-bottom: 19px; }
  body .aphc-home .ap3-service-story > p:first-of-type { font-size: 12px; letter-spacing: .07em; }
  body .aphc-home .ap3-service-story h3 { font-size: clamp(43px,11.2vw,54px); margin-top: 16px; }
  body .aphc-home .ap3-service-story > p:last-of-type { margin-top: 20px; font-size: 15px; line-height: 1.8; }
  body .aphc-home .ap3-service-story > :is(.ap3-btn,.ap3-link) { margin-top: 24px; }
  body .aphc-home .ap3-service-visual img { object-position: 61% center; }
  body .aphc-home .ap3-service-visual > :is(small,figcaption) { top: 15px; right: 15px; max-width: calc(100% - 30px); }
  body .aphc-home .ap3-service-shade { background: linear-gradient(0deg,#06180ff0,#0e241bc2 54%,#0b211547); }
  body .aphc-home .ap3-service-selector,body .aphc-home .ap3-service-selector > nav { grid-template-columns: repeat(6,145px); }
  body .aphc-home .ap3-service-selector button { min-height: 103px; padding: 15px; }
  body .aphc-home .ap3-service-selector button strong { font-size: 18px; max-width: calc(100% - 17px); }
  body .aphc-home .ap3-service-selector button > span:last-child { right: 12px; bottom: 19px; font-size: 19px; }
  body .aphc-home .ap3-preowned-head h2.ap3-title { font-size: clamp(41px,10.4vw,51px); }
  body .aphc-home .ap3-preowned-head { gap: 23px; }
  body .aphc-home .ap3-preowned-head > div > p:not(.ap3-kicker) { margin-top: 20px; font-size: 15px; }
  body .aphc-home .ap3-owner-gates > a { grid-template-columns: 77px 1fr 35px; min-height: 158px; padding-block: 23px; gap: 15px; }
  body .aphc-home .ap3-owner-gates > a + a { padding-block: 23px; }
  body .aphc-home .ap3-wheel-number { font-size: 83px; }
  body .aphc-home .ap3-owner-gates small { font-size: 12px; }
  body .aphc-home .ap3-owner-gates h3 { font-size: 26px; margin-top: 8px; }
  body .aphc-home .ap3-owner-gates p { font-size: 13px; margin-top: 9px; }
  body .aphc-home .ap3-owner-gates > a > b { width: 35px; height: 35px; font-size: 22px; }
  body .aphc-home .ap3-availability-note { margin-top: 20px; font-size: 13px; }
  body .aphc-home .ap3-vehicle-grid { grid-template-columns: 1fr; gap: 23px; margin-top: 30px; }
  body .aphc-home .ap3-vehicle-card:last-child:nth-child(odd) { display: block; grid-column: auto; }
  body .aphc-home .ap3-vehicle-card:last-child:nth-child(odd) .ap3-vehicle-media { height: auto; min-height: 0; }
  body .aphc-home .ap3-vehicle-body { padding: 22px; }
  body .aphc-home .ap3-vehicle-body h3 { font-size: 27px; }
  body .aphc-home .ap3-vehicle-foot { display: flex; gap: 13px; }
  body .aphc-home .ap3-vehicle-foot a { width: auto; margin: 0; }
  body .aphc-home .ap3-colour-heading { gap: 20px; }
  body .aphc-home .ap3-colour-heading h2.ap3-title { font-size: clamp(45px,12vw,57px); }
  body .aphc-home .ap3-colour-heading > div:last-child > p:not(.ap3-kicker),body .aphc-home .ap3-colour-heading > p { font-size: 15px; }
  body .aphc-home .ap3-colour-shelf { grid-template-columns: 1fr 1fr; gap: 22px 15px; margin-top: 27px; }
  body .aphc-home .ap3-colour-shelf > a:first-child { grid-column: 1; margin-top: 27px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(2) { grid-column: 2; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(3) { grid-column: 1 / -1; width: 75%; margin-left: auto; margin-top: 0; }
  body .aphc-home .ap3-colour-photo img { height: 215px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(2) .ap3-colour-photo img { height: 265px; }
  body .aphc-home .ap3-colour-shelf > a:nth-child(3) .ap3-colour-photo img { height: 245px; }
  body .aphc-home .ap3-colour-photo figcaption { padding: 11px; grid-template-columns: 1fr 17px; }
  body .aphc-home .ap3-colour-caption > strong { font-size: 17px; line-height: 1.25; }
  body .aphc-home .ap3-colour-bottom { margin-top: 26px; padding-top: 18px; }
  body .aphc-home .ap3-studio-link { grid-template-columns: 1fr 40px; gap: 19px; margin-top: 26px; padding: 23px 20px; }
  body .aphc-home .ap3-studio-link > :is(svg,span:first-child) { grid-column: 1; grid-row: 1; width: 39px; height: 39px; }
  body .aphc-home .ap3-studio-link > div { grid-column: 1 / -1; grid-row: 2; }
  body .aphc-home .ap3-studio-link > b { grid-column: 2; grid-row: 1; width: 40px; height: 40px; }
  body .aphc-home .ap3-studio-link h3 { font-size: 29px; }
  body .aphc-home .ap3-project-top { gap: 18px; padding-top: 14px; align-items: flex-start; }
  body .aphc-home .ap3-project-top .ap3-link { gap: 13px; font-size: 12px; }
  body .aphc-home :is(h2.ap3-project-title,.ap3-project-title h2) { font-size: clamp(47px,12.4vw,61px); line-height: .93; margin-top: 24px; margin-bottom: 27px; }
  body .aphc-home .ap3-project-title > span { -webkit-text-stroke-width: 1px; }
  body .aphc-home .ap3-film-screen { aspect-ratio: 1.24; }
  body .aphc-home .ap3-play { width: 73px; height: 73px; }
  body .aphc-home .ap3-film-caption { left: 16px; right: 16px; bottom: 15px; font-size: 12px; letter-spacing: .035em; }
  body .aphc-home .ap3-film-layout { gap: 28px; }
  body .aphc-home .ap3-project-facts h3 { font-size: 37px; }
  body .aphc-home .ap3-project-facts > p:not(.ap3-kicker) { font-size: 15px; margin-top: 19px; }
  body .aphc-home .ap3-project-facts dl { gap: 18px 34px; }
  body .aphc-home .ap3-project-facts dd { font-size: 23px; }
  body .aphc-home .ap3-archive-footer { grid-template-columns: 1fr 1fr; gap: 16px; }
  body .aphc-home .ap3-archive-footer > figure { max-width: 160px; }
  body .aphc-home .ap3-archive-footer img { height: 79px; }
  body .aphc-home .ap3-archive-footer .ap3-note { grid-column: 1 / -1; }
  body .aphc-home .ap3-archive-footer .ap3-link { grid-column: 1 / -1; margin-top: 0; }
  body .aphc-home .ap3-journey h2.ap3-title { font-size: clamp(39px,10vw,49px); }
  body .aphc-home .ap3-journey-grid { gap: 26px; }
  body .aphc-home .ap3-journey-grid > div:first-child > p:not(.ap3-kicker) { font-size: 15px; margin-top: 21px; }
  body .aphc-home .ap3-step > summary { grid-template-columns: 33px 1fr 23px; gap: 13px; min-height: 64px; }
  body .aphc-home .ap3-step summary > span { width: 33px; height: 33px; }
  body .aphc-home .ap3-step summary h3 { font-size: 21px; }
  body .aphc-home .ap3-step:not(:last-child)::before { left: 16px; }
  body .aphc-home .ap3-step > p { margin-left: 46px; margin-right: 5px; font-size: 14px; }
  body .aphc-home .ap3-contact-layout { gap: 33px; }
  body .aphc-home .ap3-contact h2.ap3-title { font-size: clamp(47px,12.3vw,59px); }
  body .aphc-home .ap3-contact-copy > p:not(.ap3-kicker) { font-size: 15px; margin-top: 21px; }
  body .aphc-home .ap3-contact-links { gap: 3px 20px; }
  body .aphc-home .ap3-visit-links { gap: 6px 20px; margin-top: 22px; padding-top: 18px; }
  body .aphc-home .ap3-form-card { padding: 28px 22px; }
  body .aphc-home .ap3-form-card > h3 { font-size: 33px; }
  body .aphc-home .ap3-contact .ap-build-cta-field > div { padding-inline: 13px; }
  body .aphc-home .ap3-contact .ap-build-cta-submit { padding-inline: 18px; }
}
@media (max-width: 359px) {
  body .aphc-home .ap3-wrap { width: calc(100% - 32px); }
  body .aphc-home h2.ap3-opening-title { font-size: 45px; }
  body .aphc-home .ap3-service-story { padding-inline: 20px; }
  body .aphc-home .ap3-service-story h3 { font-size: 43px; }
  body .aphc-home .ap3-owner-gates > a { grid-template-columns: 63px 1fr 31px; gap: 13px; }
  body .aphc-home .ap3-wheel-number { font-size: 72px; }
  body .aphc-home .ap3-owner-gates h3 { font-size: 24px; }
  body .aphc-home .ap3-owner-gates > a > b { width: 31px; height: 31px; font-size: 20px; }
  body .aphc-home .ap3-vehicle-body { padding-inline: 19px; }
  body .aphc-home .ap3-vehicle-body dl { gap: 9px; }
  body .aphc-home .ap3-vehicle-body dd { font-size: 13px; }
  body .aphc-home .ap3-vehicle-foot { display: block; }
  body .aphc-home .ap3-vehicle-foot a { width: 100%; margin-top: 4px; }
  body .aphc-home .ap3-colour-shelf { gap: 20px 12px; }
  body .aphc-home .ap3-colour-photo figcaption { padding: 10px; gap: 6px; }
  body .aphc-home .ap3-colour-caption > strong { font-size: 16px; }
  body .aphc-home .ap3-studio-link { padding-inline: 18px; }
  body .aphc-home .ap3-studio-link h3 { font-size: 27px; }
  body .aphc-home .ap3-form-card { padding-inline: 19px; }
}

/* 10 / INPUT AND MOTION FALLBACKS — NO CONTENT DEPENDS ON ANIMATION */
@media (hover: hover) and (pointer: fine) {
  body .aphc-home .ap3-section .ap3-btn:hover { background: #29385b; border-color: #29385b; }
  body .aphc-home .ap3-service-story .ap3-btn:hover,body .aphc-home .ap3-project-facts .ap3-btn:hover { background: #b3f6ff; border-color: #b3f6ff; }
  body .aphc-home .ap3-section .ap3-link:hover { color: #00616b; }
  body .aphc-home :is(.ap3-project,.ap3-contact) .ap3-link:hover { color: #6fefff; }
  body .aphc-home .ap3-quicklinks a:hover b { background: #25432e; color: #eef5e7; }
  body .aphc-home .ap3-service-selector button:hover:not(.is-active):not([aria-pressed="true"]) { background: #dce5d7; }
  body .aphc-home .ap3-owner-gates a:hover > b { background: #25432e; color: #eef5e7; }
  body .aphc-home .ap3-vehicle-card:hover .ap3-vehicle-media img { transform: scale(1.035); }
  body .aphc-home .ap3-vehicle-foot a:hover { color: #00616b; }
  body .aphc-home .ap3-studio-link:hover > b { background: #7a5c49; color: #fff5e7; }
  body .aphc-home .ap3-film-screen:hover img { transform: scale(1.025); opacity: 1; }
  body .aphc-home .ap3-film-screen:hover .ap3-play { background: #6fefff; color: #111a3d; border-color: #6fefff; }
  body .aphc-home .ap3-step summary:hover h3 { color: #486a3b; }
  body .aphc-home .ap3-contact .ap-build-cta-submit:hover { background: #29385b; border-color: #29385b; transform: none; box-shadow: none; }
}
@media (prefers-reduced-motion: reduce) {
  body .aphc-home .ap3-section *,body .aphc-home .ap3-section *::before,body .aphc-home .ap3-section *::after { transition: none !important; animation: none !important; }
  body .aphc-home .ap3-reveal { opacity: 1 !important; visibility: visible !important; transform: none !important; }
  body .aphc-home .ap3-section :is(.ap3-vehicle-media img,.ap3-film-screen img) { transform: none !important; }
  body .aphc-home .ap3-service-selector,body .aphc-home .ap3-service-selector > nav { scroll-behavior: auto !important; scroll-snap-type: none; }
}
@media (forced-colors: active) {
  body .aphc-home .ap3-section :is(a,button,input,summary) { forced-color-adjust: auto; }
  body .aphc-home .ap3-opening-title > span + span,body .aphc-home .ap3-project-title > span { color: CanvasText; -webkit-text-stroke: 0; }
  body .aphc-home .ap3-section :is(.ap3-btn,.ap3-play,.ap3-service-selector button.is-active) { border: 1px solid ButtonText; }
}
@media print {
  body .aphc-home .ap3-section { padding-block: 28px; background: #fff; color: #111; }
  body .aphc-home .ap3-wrap { width: 100%; max-width: none; }
  body .aphc-home .ap3-section h2.ap3-title { font-size: 35px; }
  body .aphc-home :is(h2.ap3-opening-title,h2.ap3-project-title,.ap3-project-title h2) { font-size: 48px; }
  body .aphc-home .ap3-opening-title > span + span,body .aphc-home .ap3-project-title > span { color: #111; -webkit-text-stroke: 0; }
  body .aphc-home .ap3-section :is(p,.ap3-note,.ap3-kicker,figcaption) { color: #333; }
  body .aphc-home .ap3-section :is(.ap3-play,.ap3-service-selector,.ap3-contact .aphc-form) { display: none; }
  body .aphc-home .ap3-service-visual,body .aphc-home .ap3-service-shade { display: none; }
  body .aphc-home .ap3-service-story { width: 100%; min-height: 0; padding: 25px 0; color: #111; }
  body .aphc-home .ap3-service-story h3 { color: #111; font-size: 32px; }
  body .aphc-home .ap3-service-panel,body .aphc-home .ap3-service-ready .ap3-service-panel { min-height: 0; background: #fff; }
  body .aphc-home .ap3-section :is(.ap3-film-layout,.ap3-journey-grid,.ap3-contact-layout) { display: block; }
  body .aphc-home .ap3-reveal { opacity: 1 !important; visibility: visible !important; transform: none !important; }
}
