:root{--vp-blue:#28698f;--vp-blue-deep:#1f587c;--vp-teal:#248f86;--vp-ink:#30383e;--vp-muted:#667078;--vp-pale:#edf6f8;--vp-pale-blue:#eef5f9;--vp-line:#d5e3e8}
.vp-page{color:var(--vp-ink);background:#fff}
.vp-page *{box-sizing:border-box}
.vp-page main{overflow:hidden}
.vp-page img{display:block;max-width:100%}
.vp-page h1,.vp-page h2,.vp-page h3,.vp-page p{margin-top:0}
.vp-page p{font-size:18px;line-height:1.75;letter-spacing:.025em}
.vp-footer-postcode,.vp-footer-address{display:block;white-space:nowrap}
.vp-footer-address-space,.vp-footer-address-break{display:none}
.vp-container{width:min(1080px,calc(100% - 48px));margin:0 auto}
.vp-container-wide{width:min(1220px,calc(100% - 48px));margin:0 auto}
.vp-section{padding:96px 0}
.vp-section-label{margin:0 0 14px!important;color:var(--vp-teal);font-size:15px!important;line-height:1.4!important;font-weight:700;letter-spacing:.12em!important}
.vp-page h2{margin:0 0 48px;color:#263b49;font-size:clamp(34px,3.1vw,46px);font-weight:600;line-height:1.45;letter-spacing:.02em}
.vp-page h3{color:#284758}
.vp-button{display:inline-flex;align-items:center;justify-content:center;min-width:290px;min-height:58px;padding:15px 30px;border-radius:4px;background:var(--vp-blue);color:#fff;font-size:18px;font-weight:700;line-height:1.45;letter-spacing:.03em;transition:background .2s,transform .2s}
.vp-button:hover{background:var(--vp-blue-deep);transform:translateY(-1px)}
.vp-note{color:var(--vp-muted);font-size:14px!important;line-height:1.75!important}
.vp-summary{width:min(850px,100%);margin:64px auto 0!important;padding:30px 38px;border-left:5px solid var(--vp-teal);background:var(--vp-pale);font-weight:500}

.vp-hero{position:relative;isolation:isolate;overflow:hidden;padding:44px 0 68px;background:radial-gradient(ellipse at 98% 55%,#e3f0f3 0,transparent 54%),radial-gradient(ellipse at 8% 88%,#eaf5fa 0,transparent 50%),linear-gradient(115deg,#f7fbfd 0,#fff 48%,#eff7fa 100%)}
.vp-hero:before{content:"";position:absolute;z-index:-1;width:70%;height:115%;right:-12%;top:-4%;border-radius:48%;background:linear-gradient(150deg,rgba(88,174,186,.12),rgba(122,174,208,.04));transform:rotate(-22deg)}
.vp-hero:after{content:"";position:absolute;z-index:-1;width:42%;aspect-ratio:1;left:-24%;bottom:-54%;border-radius:50%;border:54px solid rgba(131,184,210,.09)}
.vp-hero-inner{position:relative;width:min(1450px,calc(100% - 8%));margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:28px}
.vp-eyebrow{margin:0 0 18px!important;color:var(--vp-teal);font-size:17px!important;font-weight:700;letter-spacing:.14em!important}
.vp-hero h1{margin:0 0 28px;color:#082e4e;font-size:clamp(38px,3.5vw,56px);font-weight:700;line-height:1.42;letter-spacing:0}
.vp-hero-line:first-child{display:block}
.vp-lead{margin-bottom:35px}
.vp-lead p{margin-bottom:12px}
.vp-hero-collage{position:relative;display:block;min-width:0;min-height:0;aspect-ratio:1}
.vp-hero-collage img{width:100%;height:100%;object-fit:contain}
.vp-exact-hero{display:none}
.vp-hero-photo-cards{position:absolute;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.6%;left:60.53%;top:75.67%;width:36.13%;height:16.52%}
.vp-hero-photo-cards figure{display:flex;flex-direction:column;min-width:0;margin:0;padding:3.2%;border-radius:8px;background:#fff;box-shadow:0 4px 14px rgba(44,86,112,.08);overflow:hidden}
.vp-hero-photo-cards figure img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:5px}
.vp-hero-photo-cards figcaption{padding-top:5%;text-align:center;color:#263b49;font-size:clamp(6px,.68vw,11px);line-height:1.25;font-weight:600;white-space:nowrap}
.vp-hero-photo-cards small{display:block;margin-top:3%;font-size:.8em;font-weight:400;color:#6b747b}
.vp-exact-hero-link{position:absolute;left:4.16%;top:71.1%;width:19.65%;height:6.8%;border-radius:999px}
.vp-exact-hero-link:focus-visible{outline:3px solid #248f86;outline-offset:4px}

@media(max-width:600px){
  .vp-hero .vp-hero-collage{position:relative;overflow:hidden;aspect-ratio:946/843}
  .vp-hero .vp-hero-collage>.vp-hero-art{position:static;width:100%;height:auto;max-width:100%;object-fit:contain}
  .vp-hero-collage .vp-hero-photo-cards{left:0;top:auto;bottom:0;width:100%;height:28.5%;gap:2%}
  .vp-hero-collage .vp-hero-photo-cards figcaption{font-size:clamp(8px,2.25vw,10px);padding-top:3%}
}

.vp-support{background:#fff}
.vp-support-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 56px;border-top:1px solid var(--vp-line)}
.vp-support-item{display:grid;grid-template-columns:74px 1fr;gap:14px;padding:34px 0;border-bottom:1px solid var(--vp-line)}
.vp-support-item>span{color:var(--vp-teal);font-size:30px;line-height:1.2;font-weight:500}
.vp-support-item h3{margin:0 0 10px;font-size:23px;line-height:1.45;font-weight:600}
.vp-support-item p{margin:0}

.vp-philosophy{padding-top:110px;background:var(--vp-pale-blue)}
.vp-philosophy-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:70px;align-items:start}
.vp-philosophy-media{display:grid;grid-template-columns:1fr;gap:14px;position:sticky;top:30px}
.vp-philosophy-media img{width:100%;height:245px;object-fit:cover;object-position:center;border-radius:10px}
.vp-philosophy-media img:first-child{margin-top:0}
.vp-philosophy-copy h2{font-size:clamp(32px,3vw,43px)}
.vp-philosophy-copy>p{margin-bottom:22px}
.vp-voice-lines{margin:32px 0;padding:25px 28px;background:#fff;border-left:4px solid var(--vp-blue)}
.vp-voice-lines p{margin:0 0 8px;font-weight:500}
.vp-voice-lines p:last-child{margin-bottom:0}
.vp-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:78px}
.vp-principles div{padding:28px 24px 26px;background:#fff}
.vp-principles span{display:block;margin-bottom:14px;color:var(--vp-teal);font-size:26px;font-weight:600}
.vp-principles p{margin:0;font-size:17px;line-height:1.7;font-weight:500}
.vp-closing-copy{margin:70px auto 0!important;color:var(--vp-blue-deep);font-size:34px!important;font-weight:600;text-align:center;letter-spacing:.08em!important}

.vp-method-list{display:flex;flex-direction:column;gap:78px}
.vp-method{display:grid;grid-template-columns:1fr 1fr;gap:68px;align-items:center}
.vp-method-reverse figure{order:2}.vp-method-reverse .vp-method-copy{order:1}
.vp-method figure,.vp-repurpose figure,.vp-budget figure{margin:0}
.vp-method figure img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:10px}
.vp-method figcaption,.vp-repurpose figcaption,.vp-budget figcaption{margin-top:9px;color:var(--vp-muted);font-size:13px;line-height:1.5}
.vp-method-copy>span{display:block;margin-bottom:10px;color:var(--vp-teal);font-size:18px;font-weight:700;letter-spacing:.1em}
.vp-method-copy h3{margin:0 0 22px;font-size:30px;line-height:1.45;font-weight:600}
.vp-method-copy p{margin-bottom:14px}

.vp-team{background:linear-gradient(120deg,var(--vp-blue-deep),#2b7b91);color:#fff}
.vp-team .vp-section-label,.vp-team h2,.vp-team p{color:#fff}
.vp-team-copy{width:min(860px,100%)}
.vp-team-copy>p{margin-bottom:18px}
.vp-team-media{display:grid;grid-template-columns:1fr 1.15fr;gap:18px;margin:48px 0}
.vp-team-media img{width:100%;height:360px;object-fit:cover;border-radius:10px}
.vp-support-list{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.42)}
.vp-support-list li{min-height:88px;padding:25px 18px 20px;border-right:1px solid rgba(255,255,255,.32);border-bottom:1px solid rgba(255,255,255,.42);font-size:16px;line-height:1.55}
.vp-support-list li:nth-child(4n){border-right:0}

.vp-repurpose-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.vp-repurpose-copy>p{margin-bottom:18px}
.vp-repurpose-copy ul{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;margin:26px 0;padding:0;list-style:none}
.vp-repurpose-copy li{position:relative;padding-left:20px;font-size:16px;line-height:1.6}
.vp-repurpose-copy li:before{content:"";position:absolute;left:0;top:.65em;width:8px;height:8px;border-radius:50%;background:var(--vp-teal)}
.vp-repurpose figure img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px}

.vp-cases{background:#f5f8f9}
.vp-cases>.vp-container-wide>.vp-section-label,.vp-cases h2{text-align:center}
.vp-case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.vp-case{overflow:hidden;background:#fff;border-radius:10px}
.vp-video{position:relative;width:100%;aspect-ratio:16/9;background:#111}
.vp-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vp-case-copy{padding:25px 24px 28px}
.vp-case-copy h3{margin:0 0 13px;font-size:24px;font-weight:600}
.vp-case-copy p{margin:0 0 20px;font-size:16px;line-height:1.7}
.vp-case-copy dl{margin:0;font-size:13px;line-height:1.6}
.vp-case-copy dl div{display:grid;grid-template-columns:68px 1fr;gap:10px;margin-top:7px}
.vp-case-copy dt{color:var(--vp-teal);font-weight:700}.vp-case-copy dd{margin:0;color:#4d575d}

.vp-budget-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}
.vp-budget figure img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px}
.vp-budget-layout>div>p{margin-bottom:18px}

.vp-final-cta{padding:92px 0;background:#e9f4f6}
.vp-final-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}
.vp-final-inner h2{margin-bottom:28px;font-size:clamp(34px,3vw,43px)}
.vp-final-inner>div:first-child>p:not(.vp-section-label){margin-bottom:14px}
.vp-final-inner .vp-button{margin-top:22px}
.vp-final-portraits{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr;gap:10px;height:390px}
.vp-final-portraits img{width:100%;height:100%;object-fit:cover;border-radius:8px}
.vp-final-portraits img:first-child{grid-row:1/3}
.vp-philosophy-media img:first-child,.vp-final-portraits img:nth-child(2){object-position:75% top}
.vp-philosophy-media img:last-child,.vp-final-portraits img:nth-child(3){object-position:right top}
.vp-final-portraits img:first-child{object-position:60% top}

@media(max-width:900px){
  .vp-section{padding:78px 0}
  .vp-hero-inner{grid-template-columns:1fr;gap:42px}
  .vp-hero-copy{width:min(700px,100%)}
  .vp-hero-collage{min-height:0}
  .vp-philosophy-layout,.vp-repurpose-layout,.vp-budget-layout,.vp-final-inner{grid-template-columns:1fr;gap:46px}
  .vp-philosophy-media{position:static;order:2}
  .vp-philosophy-copy{order:1}
  .vp-philosophy-media img{height:410px}
  .vp-principles{grid-template-columns:1fr;gap:12px}
  .vp-method{gap:42px}
  .vp-team-media img{height:290px}
  .vp-support-list{grid-template-columns:repeat(2,1fr)}
  .vp-support-list li:nth-child(2n){border-right:0}
  .vp-case-grid{grid-template-columns:1fr;max-width:720px;margin:auto}
  .vp-final-portraits{height:440px}
}

@media(max-width:600px){
  .vp-page{--mobile-pixel:0.3125vw}
  .vp-page main{display:block}
  .vp-container,.vp-container-wide{width:calc(100% - 40px)}
  .vp-section{padding:48px 0}
  .vp-page p{font-size:16px;line-height:1.72;letter-spacing:.015em}
  .vp-section-label{margin-bottom:10px!important;font-size:13px!important}
  .vp-page h2{margin-bottom:30px;font-size:28px;line-height:1.45}
  .vp-button{width:100%;min-width:0;min-height:52px;padding:13px 16px;font-size:16px}
  .vp-summary{margin-top:38px!important;padding:22px 20px;border-left-width:4px}
  .vp-hero{padding:38px 0 52px}
  .vp-hero-inner{width:calc(100% - 40px);gap:30px}
  .vp-eyebrow{margin-bottom:12px!important;font-size:14px!important}
  .vp-page .menu-button{position:absolute}
  .vp-hero h1{margin-bottom:20px;font-size:clamp(26px,8.2vw,38px);line-height:1.35;letter-spacing:0}
  .vp-hero-line{display:block;white-space:nowrap}
  .vp-lead{margin-bottom:26px}
  .vp-lead p{margin-bottom:10px}
  .vp-hero-collage{display:block;min-height:0;aspect-ratio:1}
  .vp-support-grid{grid-template-columns:1fr}
  .vp-support-item{grid-template-columns:auto 1fr;column-gap:10px;row-gap:9px;padding:20px 0}
  .vp-support-item>div{display:contents}
  .vp-support-item>span{font-size:24px}
  .vp-support-item h3{align-self:center;margin:0;font-size:20px}
  .vp-support-item p{grid-column:1/-1;width:100%;margin:0}
  .vp-philosophy{padding-top:52px}
  .vp-philosophy-layout{gap:36px}
  .vp-philosophy-media{grid-template-columns:1fr;gap:12px}
  .vp-philosophy-media img{height:auto;aspect-ratio:3/2;border-radius:8px}
  .vp-philosophy-media img:first-child{margin-top:0}
  .vp-philosophy-copy h2{font-size:28px}
  .vp-philosophy-copy>p{margin-bottom:17px}
  .vp-voice-lines{margin:24px 0;padding:20px 17px}
  .vp-principles{margin-top:42px}
  .vp-principles div{padding:20px}
  .vp-principles span{font-size:22px}
  .vp-principles p{font-size:16px}
  .vp-closing-copy{margin-top:40px!important;font-size:24px!important}
  .vp-method-list{gap:46px}
  .vp-method,.vp-method-reverse{display:flex;flex-direction:column;gap:22px;align-items:stretch}
  .vp-method figure,.vp-method-reverse figure{order:2}
  .vp-method-copy,.vp-method-reverse .vp-method-copy{order:1}
  .vp-method-copy>span{font-size:15px}
  .vp-method-copy h3{margin-bottom:15px;font-size:23px}
  .vp-method figure img{border-radius:8px}
  .vp-team-media{grid-template-columns:1fr;gap:10px;margin:32px 0}
  .vp-team-media img{height:auto;aspect-ratio:16/9}
  .vp-support-list{grid-template-columns:1fr}
  .vp-support-list li{min-height:0;padding:16px 10px;border-right:0;font-size:15px}
  .vp-repurpose-copy ul{grid-template-columns:1fr;gap:8px}
  .vp-case-grid{gap:18px}
  .vp-case-copy{padding:21px 20px 24px}
  .vp-case-copy h3{font-size:22px}
  .vp-budget-layout{gap:34px}
  .vp-budget-layout figure{order:2}.vp-budget-layout>div{order:1}
  .vp-final-cta{padding:52px 0}
  .vp-final-inner{gap:36px}
  .vp-final-portraits{height:auto;aspect-ratio:1/1;grid-template-columns:1fr 1fr;grid-template-rows:1.2fr .8fr}
  .vp-final-portraits img:first-child{grid-column:1/3;grid-row:1}
  /* Mobile reading order: heading, visual, then details. */
  .vp-hero-inner,.vp-philosophy-layout,.vp-team>.vp-container,
  .vp-repurpose-layout,.vp-budget-layout,.vp-final-inner,.vp-method{display:grid;grid-template-columns:minmax(0,1fr);row-gap:0}
  .vp-hero-copy,.vp-philosophy-copy,.vp-team-copy,.vp-repurpose-copy,
  .vp-budget-layout>div,.vp-final-inner>div:first-child,.vp-method-copy{display:contents}
  .vp-hero-inner>.vp-hero-copy>.vp-eyebrow{grid-row:1}
  .vp-hero-inner>.vp-hero-copy>h1{grid-row:2}
  .vp-hero-collage{grid-row:3;margin-bottom:26px}
  .vp-lead{grid-row:4;margin-bottom:0}
  .vp-philosophy-copy>.vp-section-label,.vp-team-copy>.vp-section-label,
  .vp-repurpose-copy>.vp-section-label,.vp-budget-layout>div>.vp-section-label,
  .vp-final-inner>div:first-child>.vp-section-label{grid-row:1}
  .vp-philosophy-copy>h2,.vp-team-copy>h2,.vp-repurpose-copy>h2,
  .vp-budget-layout>div>h2,.vp-final-inner>div:first-child>h2{grid-row:2}
  .vp-philosophy-media,.vp-team-media,.vp-repurpose-layout>figure,
  .vp-budget-layout>figure,.vp-final-portraits{grid-row:3;order:initial;margin:0 0 26px}
  .vp-method-copy>span{grid-row:1}
  .vp-method-copy>h3{grid-row:2}
  .vp-method>figure,.vp-method-reverse>figure{grid-row:3;order:initial;margin-bottom:22px}
  .vp-case{display:grid;grid-template-columns:minmax(0,1fr);padding:21px 0 24px}
  .vp-case-copy{display:contents}
  .vp-case-copy>h3{grid-row:1;margin:0 20px 16px}
  .vp-case>.vp-video{grid-row:2;margin-bottom:21px}
  .vp-case-copy>p,.vp-case-copy>dl{margin-left:20px;margin-right:20px}
  .vp-page .legacy-copyline-text{left:10px;top:50%;width:calc(100% - 20px);transform:translateY(-50%);white-space:nowrap;font-size:clamp(10px,3.125vw,11px);line-height:1.4}
}

@media(min-width:320px) and (max-width:600px){
  .vp-page p{font-size:clamp(16px,4.375vw,18.8px);line-height:1.7}
  .vp-section-label{font-size:clamp(13px,3.65vw,15.7px)!important}
  .vp-page h2{font-size:clamp(28px,7.65vw,32.9px)}
  .vp-hero h1{font-size:clamp(26px,8.2vw,38px)}
}

@media(max-width:360px){
  .vp-container,.vp-container-wide,.vp-hero-inner{width:calc(100% - 32px)}
  .vp-hero h1{font-size:clamp(26px,8.2vw,38px)}
  .vp-page h2{font-size:26px}
  .vp-support-item{grid-template-columns:44px 1fr}
  .vp-case-copy dl div{grid-template-columns:62px 1fr}
}

@media(max-width:600px){
  .vp-page h2.vp-responsive-heading{font-size:clamp(23px,7vw,30px);line-height:1.45;letter-spacing:.02em}
  .vp-responsive-heading .vp-heading-line{display:block;white-space:nowrap}
  .vp-responsive-heading .vp-desktop-break{display:none}
}

/* Targeted content refinements: HTML hero, explanatory lists, real video previews. */
.vp-hero-collage{aspect-ratio:946/843}
.vp-hero-collage .vp-hero-art{height:auto;aspect-ratio:946/843;object-fit:contain}
.vp-hero-collage .vp-hero-photo-cards{left:0;top:auto;bottom:0;width:100%;height:25%;gap:2%}
.vp-support-visual{width:min(860px,100%);margin:0 auto 44px}
.vp-support-visual img{width:100%;height:340px;object-fit:cover;object-position:center 43%;border-radius:10px}
.vp-support-visual figcaption{margin-top:8px;color:var(--vp-muted);font-size:13px}
.vp-philosophy-intro p{margin-bottom:22px}
.vp-player-preview{display:block;overflow:hidden;border-radius:10px;background:#fff;color:#30383e;box-shadow:0 4px 16px #234e6812;text-decoration:none}
.vp-player-brand{display:flex;align-items:center;gap:7px;padding:10px 14px;font:600 14px Arial,sans-serif}
.vp-player-brand svg{width:25px;height:18px}
.vp-player-picture{position:relative;display:block;background:#141414;aspect-ratio:16/9}
.vp-philosophy-media .vp-player-picture img{width:100%;height:100%;aspect-ratio:16/9;object-fit:contain;border-radius:0;margin:0}
.vp-player-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:52px;height:36px;border-radius:9px;background:#f03;color:white;font-size:19px}
.vp-player-controls{display:flex;align-items:center;gap:12px;background:#191919;padding:9px 12px;color:#fff;font-size:12px}
.vp-player-seek{height:3px;flex:1;background:linear-gradient(to right,#f03 30%,#8d8d8d 30%)}
.vp-player-preview:focus-visible{outline:3px solid var(--vp-teal);outline-offset:4px}
.vp-support-list{gap:14px;border:0;margin-top:24px}
.vp-support-list li{display:flex;align-items:flex-start;gap:11px;min-height:0;padding:18px 16px;border:0;background:#f2f8f8;color:#294b55;border-radius:6px;font-size:16px;line-height:1.65}
.vp-list-icon,.vp-platform-icon{display:inline-flex;flex:none;color:var(--vp-teal)}
.vp-list-icon svg{width:22px;height:22px;margin-top:2px}
.vp-repurpose-layout{grid-template-columns:minmax(0,1fr);gap:0}
.vp-repurpose-copy{display:contents}
.vp-repurpose-copy>.vp-section-label{grid-row:1}
.vp-repurpose-copy>h2{grid-row:2}
.vp-repurpose-layout>figure{grid-row:3;max-width:1080px;width:100%;margin:0 0 36px}
.vp-repurpose figure img{width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;border-radius:14px}
.vp-repurpose-copy>p:not(.vp-section-label){max-width:850px}
.vp-repurpose-copy ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 24px}
.vp-repurpose-copy li{display:flex;align-items:center;gap:12px;padding:18px;background:#f1f7f8;border-radius:8px;min-width:0;font-size:16px}
.vp-repurpose-copy li:before{content:none}
.vp-platform-icon svg{width:25px;height:25px}
.vp-repurpose-copy li:nth-child(-n+2) .vp-platform-icon{color:#da2544}
.vp-budget-heading .vp-budget-first{white-space:nowrap}
@media(min-width:601px){
  .vp-hero h1{font-size:clamp(32px,3.2vw,52px)}
  .vp-hero-photo-cards figcaption{font-size:clamp(8px,.9vw,13px)}
  .vp-hero-inner{grid-template-columns:1fr 1fr;gap:26px}
}
@media(min-width:601px) and (max-width:1050px){
  .vp-hero-inner{grid-template-columns:1fr;gap:30px}
  .vp-hero-collage{width:min(700px,100%);margin:auto}
}
@media(max-width:600px){
  .vp-page .legacy-mobile-award{display:none}
  .vp-support-visual{display:none}
  .vp-hero .vp-hero-collage{aspect-ratio:946/843}
  .vp-philosophy-layout{row-gap:0}
  .vp-philosophy-intro{grid-row:3}
  .vp-philosophy-intro p{margin-bottom:17px}
  .vp-philosophy-media{grid-row:4;position:static;margin:8px 0 0;gap:16px}
  .vp-voice-lines{grid-row:5;margin:26px 0 20px}
  .vp-philosophy-outro{grid-row:6}
  .vp-support-list{gap:10px;margin-top:16px}
  .vp-support-list li{padding:15px 14px;font-size:16px}
  .vp-repurpose figure img{aspect-ratio:2/5;height:auto;object-fit:contain}
  .vp-repurpose-layout>figure{margin-bottom:26px}
  .vp-repurpose-copy ul{grid-template-columns:minmax(0,1fr);gap:10px;margin:14px 0 24px}
  .vp-repurpose-copy li{padding:16px;font-size:16px}
  .vp-budget-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
  .vp-budget-layout>figure{grid-row:1;margin-bottom:26px}
  .vp-budget-layout>div{display:block;grid-row:2}
  .vp-budget-heading .vp-budget-first{white-space:normal;text-wrap:balance}
}

@media(min-width:601px){.vp-budget-heading .vp-budget-first{display:block}.vp-budget-heading .vp-budget-first>.vp-heading-line{display:inline}}
@media(min-width:601px){.vp-budget-heading .vp-desktop-break{display:none}}

/* PC headline emphasis and mobile two-line heading; source text remains HTML. */
@media(min-width:601px){
  .vp-eyebrow{font-size:22px!important;line-height:1.45}
  .vp-hero h1{font-size:clamp(36px,3.7vw,58px);line-height:1.42}
  .vp-voice-lines{padding:0;border:0;background:transparent;margin:28px 0}
  .vp-voice-lines p{font-weight:400;margin-bottom:18px}
  .vp-voice-lines p:last-child{margin-bottom:0}
}
@media(max-width:600px){
  .vp-eyebrow{font-size:clamp(17px,4.4vw,20px)!important;line-height:1.45;letter-spacing:.08em!important}
  .vp-hero h1{font-size:clamp(25px,8.1vw,36px);line-height:1.35}
  .vp-hero-line{display:block;white-space:nowrap}
  .vp-support-visual{display:block;margin:0 0 30px}
  .vp-support-visual img{height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:8px}
  .vp-philosophy-media{grid-row:3;margin:0 0 26px}
  .vp-philosophy-intro{grid-row:4}
  .vp-voice-lines{grid-row:5}
  .vp-philosophy-outro{grid-row:6}
}

/* Remove photo-caption space; preserve the photos and their text sections. */
.vp-hero-collage .vp-hero-photo-cards{height:auto}
.vp-hero-photo-cards figure{aspect-ratio:16/10}
.vp-hero-photo-cards figure img{height:100%;min-height:0;aspect-ratio:auto;object-fit:cover}
@media(max-width:600px){
  .vp-voice-lines{padding:0;border:0;background:transparent;margin:0 0 17px;width:100%}
  .vp-voice-lines p{font-weight:400;margin:0 0 17px}
  .vp-voice-lines p:last-child{margin-bottom:0}
  .vp-final-inner .vp-button{width:min(100%,360px);min-width:0;min-height:52px;height:auto;margin-top:22px;padding:14px 16px;border:0;border-radius:0;background:#008489;color:#fff;font-family:メイリオ,Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',sans-serif;font-size:16px;font-weight:700;line-height:1.45;letter-spacing:0;text-align:center;box-shadow:none}
  .vp-final-inner .vp-button:hover{background:#008489;transform:none}
}

/* Industry overview: non-interactive thumbnails, scoped to this new section. */
.vp-industries{padding:0 0 72px}
.vp-industries h2{margin-bottom:20px}
.vp-industries-intro{margin-bottom:28px}
.vp-industries-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.vp-industries-grid figure{min-width:0;margin:0}
.vp-industries-grid img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:8px}
.vp-industries-grid figcaption{margin-top:10px;color:var(--vp-ink);font-size:16px;line-height:1.5;font-weight:500}
@media(max-width:600px){
  .vp-industries{padding:0 0 44px}
  .vp-industries h2{margin-bottom:18px}
  .vp-industries-intro{margin-bottom:22px}
  .vp-industries-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:20px}
  .vp-industries-grid figcaption{margin-top:7px;font-size:14px;line-height:1.5}
}

/* Content-based groups retain the existing responsive thumbnail grid. */
.vp-industries .vp-industry-group + .vp-industry-group{margin-top:36px}
.vp-industries .vp-industry-group h3{margin:0 0 16px;color:var(--vp-teal);font-size:22px;font-weight:700;line-height:1.5;letter-spacing:0}
@media(max-width:600px){
  .vp-industries .vp-industry-group + .vp-industry-group{margin-top:28px}
  .vp-industries .vp-industry-group h3{margin-bottom:12px;font-size:18px;line-height:1.5}
}

.vp-support-intro{margin:0 0 28px;font-weight:400}
@media(min-width:601px){
  .vp-industries-grid .vp-thumbnail-mobile-only{display:none}
}

/* Keep phrases intact while allowing revised headings to fit their columns. */
.vp-copy-heading .vp-heading-phrase{display:inline-block;white-space:nowrap}
@media(max-width:600px){
  .vp-copy-heading .vp-heading-line{white-space:normal;text-wrap:balance}
}

/* The philosophy players retain the media column and native video proportions. */
.vp-philosophy-media .vp-philosophy-video{min-width:0;overflow:hidden;border-radius:10px}
@media(max-width:600px){.vp-philosophy-media .vp-philosophy-video{border-radius:8px}}

/* Show the original interview in full, with user-initiated playback. */
.vp-support-visual .vp-support-dialogue{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#000;border-radius:10px}
@media(max-width:600px){.vp-support-visual .vp-support-dialogue{border-radius:8px}}

.vp-support-visual{position:relative}
.vp-support-sound{position:absolute;right:12px;top:12px;max-width:calc(100% - 24px);padding:10px 14px;border:1px solid rgba(255,255,255,.6);border-radius:6px;background:rgba(0,0,0,.72);color:#fff;font:inherit;font-size:14px;line-height:1.4;cursor:pointer}
.vp-support-sound[hidden]{display:none}
.vp-support-sound:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* One review image between the team heading and its explanation. */
.vp-team .vp-team-media{display:block;width:min(860px,100%);margin:0 0 32px}
.vp-team .vp-team-media img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
.vp-team .vp-team-copy{margin-bottom:30px}
@media(max-width:600px){.vp-team>.vp-container>h2{grid-row:1}.vp-team .vp-team-media{grid-row:2;margin:0 0 26px}.vp-team .vp-team-copy{display:block;grid-row:3;margin:0 0 26px}.vp-team .vp-support-list{grid-row:4}}

/* Updated supporting imagery and the introduction above the device visual. */
.vp-support .vp-support-visual img{height:auto;aspect-ratio:auto;object-fit:contain}
.vp-repurpose-copy>.vp-repurpose-intro{grid-row:3;margin:0 0 28px;max-width:850px}
.vp-repurpose-layout>figure{grid-row:4}
.vp-repurpose figure img{height:auto;aspect-ratio:16/9;object-fit:contain}
.vp-final-showcase{width:100%;margin:0;min-width:0}
@media(max-width:600px){.vp-repurpose-copy>.vp-repurpose-intro{margin-bottom:22px}.vp-repurpose figure img{aspect-ratio:16/9}.vp-final-showcase{grid-row:3;margin:0 0 26px;width:100%}}

/* Keep remaining expansion copy after the visual; no auto-placement above heading. */
.vp-repurpose-copy>p:not(.vp-section-label):not(.vp-repurpose-intro):not(.vp-note){grid-row:5}
.vp-repurpose-copy>ul{grid-row:6}
.vp-repurpose-copy>.vp-note{grid-row:7}

/* Keep the philosophy heading in two PC lines and whole phrases on mobile. */
.vp-philosophy-heading .vp-heading-line{display:block;white-space:nowrap}
.vp-philosophy-heading .vp-heading-phrase{display:inline-block;white-space:nowrap}
@media(min-width:901px){.vp-philosophy-copy h2.vp-philosophy-heading{font-size:clamp(26px,2.3vw,32px);letter-spacing:0;line-height:1.45}}
@media(min-width:601px) and (max-width:900px){.vp-philosophy-copy h2.vp-philosophy-heading{font-size:32px}}
@media(max-width:600px){.vp-philosophy-heading .vp-heading-line{white-space:normal;text-wrap:balance}}
.vp-philosophy-intro p{margin-bottom:22px}
@media(max-width:600px){.vp-philosophy-intro p{margin-bottom:17px}}

/* Show the supplied documentary thumbnail in full, without cropping its text. */
.vp-method figure img[src*="field-shooting-selected-20261004.jpg"]{height:auto;aspect-ratio:637/355;object-fit:contain}

/* Mobile-only alignment: stable icon column and heading / photo / body order. */
@media(max-width:600px){
  .vp-page h2,.vp-page h3,.vp-method,.vp-support-item{min-width:0;max-width:100%}
  .vp-method-copy>h3{line-height:1.45;letter-spacing:0;margin-bottom:18px}
  .vp-method-title-piece{display:block;white-space:nowrap}
  .vp-method-copy>span{margin-bottom:8px}
  .vp-method>figure,.vp-method-reverse>figure{grid-row:3;margin:0 0 22px}
  .vp-method-copy>p{grid-column:1;margin-bottom:14px}
  .vp-method-copy>p:nth-of-type(1){grid-row:4}
  .vp-method-copy>p:nth-of-type(2){grid-row:5}
  .vp-method-copy>p:nth-of-type(3){grid-row:6}
  .vp-support-list li{display:grid;grid-template-columns:22px minmax(0,1fr);column-gap:11px;align-items:start}
  .vp-support-list li>span:last-child{min-width:0}
}

/* Mobile support heading: three deliberate lines, PC unchanged. */
@media(max-width:600px){
 .vp-page h2.vp-support-heading{font-size:clamp(20px,6.6vw,28px);line-height:1.45;letter-spacing:0}
 .vp-support-heading .vp-heading-line{display:block;white-space:nowrap;text-wrap:nowrap}
 .vp-support-heading .vp-support-video-line{display:block}
}

/* Readable production-case metadata, with aligned wrapping. */
.vp-case-copy dl{font-size:16px;line-height:1.7}
.vp-case-copy dl div{grid-template-columns:76px minmax(0,1fr);gap:12px;margin-top:10px}
.vp-case-copy dt,.vp-case-copy dd{min-width:0}
@media(max-width:600px){.vp-case-copy dl div{grid-template-columns:76px minmax(0,1fr)}}

/* Match the home consultation: title, original Zoom banner, copy and button. */
.vp-page .vp-consultation{padding:80px 20px 75px;background:#fff;text-align:center}
.vp-page .vp-consultation-inner{width:min(980px,100%);margin:0 auto}
.vp-page .vp-consultation h2{margin:0 auto 32px;color:#316791;font-family:Meiryo,"メイリオ",sans-serif;font-size:40px;font-weight:700;line-height:1.4;letter-spacing:0}
.vp-page .vp-consultation-banner{display:block;width:629px;max-width:100%;margin:0 auto 37px}
.vp-page .vp-consultation-banner img{display:block;width:100%;height:auto;aspect-ratio:1923/818;object-fit:contain}
.vp-page .vp-consultation p{margin:0 auto 31px;color:#4d4d4d;font-family:Meiryo,"メイリオ","Hiragino Kaku Gothic Pro",sans-serif;font-size:18px;font-weight:400;line-height:25.2px;letter-spacing:0}
.vp-page .vp-consultation-button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;max-width:100%;min-width:224px;min-height:52px;padding:14px 24px;border:0;border-radius:0;background:#47a288;color:#fff;font-family:Meiryo,"メイリオ",sans-serif;font-size:21px;font-weight:700;line-height:1;text-align:center;text-decoration:none}
.vp-page .vp-consultation a:focus-visible{outline:2px solid #316791;outline-offset:4px}
@media(min-width:901px){.vp-page .vp-consultation-button{background:#4c9380}}
@media(max-width:600px){
 .vp-page .vp-consultation{padding:21.875vw 6.25vw 22.09375vw}
 .vp-page .vp-consultation h2{margin-bottom:7.5vw;font-size:7.5vw;line-height:1.4}
 .vp-page .vp-consultation h2>span{display:block;white-space:nowrap}
 .vp-page .vp-consultation-banner{width:100%;margin-bottom:8.125vw}
 .vp-page .vp-consultation p{margin-bottom:5vw;font-size:4.375vw;line-height:6.125vw}
 .vp-page .vp-consultation-button{width:100%;min-width:0;background:#008489;min-height:52px;padding:12px 8px;font-size:5vw;line-height:1.5}
}

/* Match section labels and reading rhythm to the president page. */
.vp-page .vp-section{padding:80px 0}
.vp-page .vp-section-label{font-size:20px!important;line-height:1.6!important;letter-spacing:.04em!important}
.vp-page .vp-method-list{gap:60px}
.vp-page .vp-consultation{padding-top:56px}
@media(max-width:600px){
 .vp-page .vp-section{padding:40px 0}
 .vp-page .vp-section-label{font-size:18px!important;line-height:1.6!important}
 .vp-page .vp-consultation{padding-top:40px}
 .vp-page .vp-consultation p{font-size:16px;line-height:1.75}
 .vp-page .vp-method-list{gap:36px}
}

/* Share the gap between the budget section and final consultation. */
.vp-page .vp-budget{padding-bottom:32px}
.vp-page .vp-budget+.vp-consultation{padding-top:32px}
@media(max-width:600px){.vp-page .vp-budget{padding-bottom:20px}.vp-page .vp-budget+.vp-consultation{padding-top:24px}}

/* Desktop copy uses phrase boundaries; narrow screens retain readable flow. */
@media(min-width:601px){
 .vp-pc-copy-line{display:block}
 .vp-method-copy>p:has(.vp-pc-copy-line),.vp-repurpose-copy>.vp-repurpose-intro{font-size:17px;line-height:1.85}
 .vp-responsive-heading .vp-heading-line{display:block}
}
@media(max-width:600px){
 .vp-page h2.vp-responsive-heading{font-size:clamp(17px,5.3vw,26px);letter-spacing:0;line-height:1.65}
 .vp-page .vp-methods h2.vp-responsive-heading{font-size:clamp(21px,5.8vw,26px);line-height:1.6}
}

/* Keep short words together while allowing headings to fit narrow columns. */
.vp-page .copy-unit{display:inline-block;white-space:nowrap;max-width:100%;vertical-align:baseline}
