/* Illustrated sourcing journey. Components are scoped to this homepage feature. */
.pw-world{--pw-ink:#183d4b;--pw-teal:#366d6b;--pw-gold:#c5a66b;--pw-line:#d6dfd5;--pw-muted:#536b70;padding:clamp(42px,5vw,72px) 0;background:#f4f2e8;color:var(--pw-ink);scroll-margin-top:105px}
.pw-world *, .pw-audiences *,.pw-india *{box-sizing:border-box}
.pw-world [hidden]{display:none!important}
.pw-header{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(24px,4vw,64px);align-items:end;margin-bottom:28px}
.pw-world .pw-header h2{font-family:'Khetsi Playfair',Georgia,serif;font-size:clamp(32px,3.7vw,47px);font-weight:500;line-height:1.15;letter-spacing:-.025em;max-width:580px;margin:13px 0 0;text-wrap:balance}
.pw-header>p,.pw-header>div>p{font-size:14px;line-height:1.75;max-width:520px;margin:0;color:var(--pw-muted)}
.pw-eyebrow{font-size:10px;line-height:1.5;letter-spacing:.16em;text-transform:uppercase;font-weight:650;color:#467570}
.pw-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);border:1px solid #d3dcd2;border-radius:18px;overflow:hidden;background:#fffdf7;box-shadow:0 20px 50px #183e4a0a}
.pw-stage{position:relative;min-width:0;align-self:stretch;min-height:410px;background:#174656;overflow:hidden;isolation:isolate}
.pw-map{display:block;width:100%;height:100%;min-height:410px;object-fit:cover;aspect-ratio:1200/760}
.pw-scene-label{position:absolute;top:20px;left:22px;z-index:2;max-width:calc(100% - 44px);border:1px solid #eff4e526;background:#153c4acc;backdrop-filter:blur(8px);color:#e8eddf;padding:9px 12px;border-radius:7px;font-size:10px;line-height:1.6;letter-spacing:.04em;pointer-events:none}
.pw-scene-label.is-bottom,.pw-scene-label--bottom{top:auto;bottom:17px;left:20px;color:#d1e0d8;background:none;border:0;padding:0;font-size:10px;letter-spacing:0;max-width:75%}
.pw-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:42px;height:42px;border:1px solid #f0f2e8;border-radius:50%;padding:0;display:grid;place-items:center;background:#fcf9ed;color:#244957;box-shadow:0 4px 0 #082e3b26,0 9px 22px #082e3b30;font-family:inherit;font-size:13px;font-weight:600;line-height:1;z-index:3;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}
.pw-node[aria-pressed=true]{background:#d5b77c;border-color:#f2d9a5;color:#123846;box-shadow:0 0 0 6px #f1d39224,0 6px 18px #092a3f3d}
.pw-node:after{content:'';position:absolute;bottom:-6px;width:10px;height:10px;background:inherit;transform:rotate(45deg);border-right:1px solid #eff2e8;border-bottom:1px solid #eff2e8;z-index:-1}
.pw-world :is(a,button):focus-visible,.pw-audiences a:focus-visible,.pw-india a:focus-visible{outline:3px solid #b08743;outline-offset:4px}
.pw-panels{min-width:0;display:grid;align-items:start;background:#fffdf7}
.pw-panel{min-width:0;padding:clamp(25px,3vw,39px);border-bottom:1px solid var(--pw-line)}
.pw-world.is-enhanced .pw-panel{border-bottom:0}
.pw-panel .pw-eyebrow{font-size:10px;color:#527a72}
.pw-panel h3{font-family:'Khetsi Playfair',Georgia,serif;font-weight:500;font-size:clamp(27px,2.4vw,35px);line-height:1.2;letter-spacing:-.02em;margin:15px 0 18px;text-wrap:balance}
.pw-panel>p{font-size:14px;line-height:1.75;color:var(--pw-muted);margin:0 0 19px}
.pw-role-label{display:block;font-size:10px;line-height:1.5;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#476b66;margin:20px 0 9px}
.pw-panel ul{list-style:none;margin:0 0 21px;padding:0;display:grid;gap:9px}
.pw-panel li{font-size:12px;line-height:1.65;color:#4d666a;position:relative;padding-left:17px;overflow-wrap:break-word}
.pw-panel li:before{content:'';position:absolute;width:5px;height:5px;border-radius:50%;top:.65em;left:0;background:#9aaf8b}
.pw-panel .pw-panel-link,.pw-panel a{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:#245f61;text-decoration:none;font-size:12px;font-weight:650;line-height:1.5;margin-top:4px}
.pw-panel .pw-panel-link span:last-child{margin-left:3px}
.pw-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin:18px 0 0;padding:0;border:1px solid var(--pw-line);border-radius:11px;background:#fffdf7;overflow:hidden}
.pw-steps a{display:flex;flex-direction:column;justify-content:flex-start;gap:8px;min-width:0;min-height:89px;padding:17px 15px;text-decoration:none;color:#456169;border-right:1px solid var(--pw-line);position:relative;overflow-wrap:break-word;transition:background .2s ease}
.pw-steps a:last-child{border-right:0}
.pw-steps a>span:first-child{font-size:10px;letter-spacing:.07em;color:#6a8483;font-weight:600}
.pw-steps a strong,.pw-steps a .pw-step-title{font-size:12px;line-height:1.5;font-weight:600}
.pw-steps a[aria-current=step]{background:#e4ede1;color:#183e4b;box-shadow:inset 0 -3px #749385}
.pw-steps a[aria-current=step]>span:first-child{color:#527365}
.pw-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;padding-top:19px}
.pw-controls button{min-height:44px;padding:10px 16px;border:1px solid #bacac1;border-radius:7px;background:#fffdf7;color:#214b54;font-family:inherit;font-size:12px;font-weight:600;line-height:1.5;cursor:pointer;white-space:normal}
.pw-controls button[data-world-play]{background:#214b54;border-color:#214b54;color:#fffdf2;padding-inline:21px}
.pw-controls button:disabled{opacity:.45;cursor:default}
.pw-controls [role=status],.pw-status{flex:1 1 250px;min-width:0;color:#58706e;font-size:11px;line-height:1.6}
.pw-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}
.pw-toolbar>p{font-size:11px;color:var(--pw-muted);line-height:1.6;margin:0}
.pw-note{font-size:11px;line-height:1.7;color:#617673;max-width:880px;margin:17px 0 0}
.pw-note a{color:#306a68;text-underline-offset:3px}
.pw-complete{display:flex;align-items:center;gap:12px;border-top:1px solid var(--pw-line);padding-top:17px;margin-top:22px;color:#306761;font-size:12px;line-height:1.6}
.pw-audiences{padding:32px 0 40px;color:#183d4b;background:#fffdf7}
.pw-audiences-header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:12px 25px;margin-bottom:18px}
.pw-audiences h2{font-family:'Khetsi Playfair',Georgia,serif;font-size:clamp(26px,2.8vw,36px);font-weight:500;line-height:1.2;margin:0}
.pw-audiences-header p{font-size:12px;line-height:1.65;color:#5a7171;margin:0}
.pw-audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pw-audience{display:grid;grid-template-columns:30px 1fr 16px;gap:14px;align-items:start;min-width:0;padding:23px 21px;background:#f7f6ee;border:1px solid #dbe3d7;border-radius:11px;text-decoration:none;color:#234854;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.pw-audience>span:first-child{font-size:12px;font-weight:600;color:#759080;padding-top:3px}
.pw-audience h3{font-size:15px;line-height:1.45;margin:0 0 10px;font-weight:650}
.pw-audience p{font-size:12px;line-height:1.7;color:#5c7271;margin:0}
.pw-audience>span:last-child{font-size:18px;color:#708e7b}
.pw-india{padding:clamp(30px,4vw,48px) 0;border-top:1px solid #dce3d8;color:#244854;background:#ecf1e8}
.pw-india-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,5vw,70px);align-items:start}
.pw-india h2{font-family:'Khetsi Playfair',Georgia,serif;font-size:clamp(28px,3vw,38px);font-weight:500;line-height:1.2;margin:10px 0 0;text-wrap:balance}
.pw-india p{font-size:14px;line-height:1.8;color:#526d6e;margin:0 0 15px}
.pw-india a{font-size:12px;color:#285d60;font-weight:650;display:inline-flex;align-items:center;min-height:44px;gap:12px;text-decoration:none}
.pw-hero-note{font-size:11px;line-height:1.6;letter-spacing:.02em}
@media(hover:hover) and (pointer:fine){.pw-node:hover{background:#e7d3aa;color:#173d4b}.pw-steps a:hover{background:#eef2e8}.pw-panel a:hover,.pw-india a:hover{text-decoration:underline;text-underline-offset:4px}.pw-audience:hover{transform:translateY(-2px);border-color:#9cb6a7;box-shadow:0 12px 25px #143f4c0a}.pw-controls button:hover:not(:disabled){border-color:#668e80}}
@media(max-width:1100px){.pw-layout{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}.pw-stage,.pw-map{min-height:420px}.pw-panel{padding:27px}.pw-panel h3{font-size:29px}.pw-panel>p{font-size:13px}.pw-steps a{padding:14px 11px}.pw-audience{padding:20px 17px;grid-template-columns:22px 1fr 13px;gap:10px}}
@media(max-width:900px){.pw-header{grid-template-columns:1fr;gap:17px}.pw-header>p,.pw-header>div>p{max-width:670px}.pw-layout{grid-template-columns:1fr}.pw-stage,.pw-map{min-height:0;aspect-ratio:1200/760}.pw-map{height:auto;object-fit:contain}.pw-panel{padding:29px 32px}.pw-panel h3{font-size:31px;margin-top:11px}.pw-panel>p{font-size:14px;max-width:660px}.pw-panel ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 25px}.pw-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.pw-steps a{min-height:82px;padding:14px 16px}.pw-steps a:nth-child(3){border-right:0}.pw-steps a:nth-child(-n+3){border-bottom:1px solid var(--pw-line)}.pw-audience-grid{gap:12px}.pw-audience{grid-template-columns:1fr 14px;padding:20px 17px}.pw-audience>span:first-child{display:none}.pw-audience h3{font-size:14px}.pw-india-inner{grid-template-columns:1fr;gap:21px}.pw-india p{max-width:720px}}
@media(max-width:620px){.pw-world{padding-block:39px}.pw-header{gap:14px;margin-bottom:22px}.pw-world .pw-header h2{font-size:33px;line-height:1.17}.pw-header>p,.pw-header>div>p{font-size:13px}.pw-layout{border-radius:12px}.pw-stage{aspect-ratio:1200/850}.pw-map{width:100%;height:100%;object-fit:cover;aspect-ratio:auto;transform:scale(1.02)}.pw-node{width:44px;height:44px;font-size:12px;box-shadow:0 4px 12px #092a3f33}.pw-scene-label{top:12px;left:12px;font-size:8px;padding:5px 8px;max-width:calc(100% - 24px);letter-spacing:.02em}.pw-scene-label.is-bottom,.pw-scene-label--bottom{bottom:10px;left:12px;font-size:8px;max-width:80%;line-height:1.5}.pw-panel{padding:24px 22px}.pw-panel h3{font-size:28px;margin-bottom:14px}.pw-panel>p{font-size:13px;line-height:1.75}.pw-role-label{margin-top:17px;font-size:9px}.pw-panel ul{grid-template-columns:1fr;gap:8px;margin-bottom:14px}.pw-panel li{font-size:12px}.pw-panel a{font-size:12px}.pw-steps{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:13px}.pw-steps a{min-height:79px;padding:13px 14px;gap:6px}.pw-steps a:nth-child(3){border-right:1px solid var(--pw-line)}.pw-steps a:nth-child(2n){border-right:0}.pw-steps a:nth-child(-n+4){border-bottom:1px solid var(--pw-line)}.pw-steps a strong,.pw-steps a .pw-step-title{font-size:12px}.pw-controls{gap:9px;padding-top:16px}.pw-controls button{font-size:11px;padding:10px 13px}.pw-controls button[data-world-play]{flex:1 1 auto;padding-inline:15px}.pw-controls [role=status],.pw-status{flex-basis:100%;margin-top:3px}.pw-note{font-size:10px;line-height:1.7}.pw-audiences{padding-block:27px 32px}.pw-audiences-header{gap:10px;margin-bottom:17px}.pw-audiences h2{font-size:28px}.pw-audience-grid{grid-template-columns:1fr;gap:10px}.pw-audience{grid-template-columns:25px 1fr 15px;padding:20px;gap:12px}.pw-audience>span:first-child{display:block}.pw-audience h3{font-size:15px;margin-bottom:7px}.pw-audience p{font-size:12px}.pw-india{padding-block:30px}.pw-india h2{font-size:30px}.pw-india p{font-size:13px}.pw-world .pw-eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){.pw-world *,.pw-audiences *,.pw-india *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.pw-audience:hover{transform:none}}
@media print{.pw-world{padding-block:25px;background:white}.pw-layout{display:block;box-shadow:none}.pw-stage,.pw-steps,.pw-controls{display:none!important}.pw-world.is-enhanced .pw-panel[hidden]{display:block!important}.pw-panel{break-inside:avoid;border-bottom:1px solid #ccc}.pw-header{display:block}.pw-audience-grid{display:block}.pw-audience{margin-bottom:12px;break-inside:avoid}}

/* Match the server-rendered component contract and retain exact map coordinates. */
.bh-home .pw-header h2{font-size:clamp(32px,3.7vw,47px);line-height:1.15}
.pw-layout{background:#174656}
.pw-stage{align-self:center;aspect-ratio:1200/760;min-height:0;height:auto}
.pw-map{display:block;width:100%;height:auto;min-height:0;aspect-ratio:1200/760;object-fit:contain;transform:none}
.pw-detail p,.pw-outcome p{font-size:13px;line-height:1.75;color:#536b70;margin:0;overflow-wrap:break-word}
.pw-panel .pw-role-label{margin:18px 0 6px;font-size:9px}
.pw-outcome{margin-top:20px;padding:14px 16px;background:#edf2e7;border-left:2px solid #97ad8a;border-radius:0 7px 7px 0}
.pw-outcome .pw-role-label{margin:0 0 6px;color:#4c715f}
.pw-outcome p{color:#365c56;font-size:12px}
.pw-panel-link{margin-top:17px!important}
.pw-manual{display:flex;align-items:center;gap:8px}
.pw-illustration-note{font-size:10px;line-height:1.7;color:#617673;margin:13px 0 0;max-width:800px}
.pw-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px 25px;margin-top:20px;padding-top:19px;border-top:1px solid var(--pw-line)}
.pw-footer .pw-note{margin:0;max-width:650px;flex:1 1 340px}
.pw-footer>a{font-size:12px;font-weight:600;line-height:1.5;color:#2f6362;text-decoration:none;min-height:44px;display:inline-flex;align-items:center;gap:12px}
.pw-india{display:grid;grid-template-columns:.75fr 1.25fr;gap:30px;margin-top:30px;padding:26px 29px;border:1px solid #d7e0d2;border-radius:10px;background:#e9efe3}
.pw-india h3{font-family:'Khetsi Playfair',Georgia,serif;font-size:25px;line-height:1.25;font-weight:500;margin:0;color:#2d5356;text-wrap:balance}
.pw-india p{font-size:13px;line-height:1.8;margin:0;color:#536f69}
.pw-audiences{background:transparent}
.pw-audience-heading{display:flex;flex-direction:column;gap:10px;margin-bottom:21px}
.bh-home .pw-audience-heading h2{font-size:clamp(27px,2.8vw,36px);line-height:1.2;margin:0}
.pw-audience-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:25px 24px;border:1px solid #d6e0d4;background:#fffdf7;border-radius:12px;text-decoration:none;color:#234854;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;overflow-wrap:break-word}
.pw-audience-number{font-size:10px;font-weight:600;letter-spacing:.08em;color:#73917c;display:block;margin-bottom:18px}
.pw-audience-card h3{font-size:16px;line-height:1.4;font-weight:650;margin:0 0 11px;color:#244a54}
.pw-audience-card p{font-size:13px;line-height:1.75;color:#58706e;margin:0 0 20px}
.pw-audience-link{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:13px;width:100%;font-size:12px;font-weight:600;line-height:1.5;color:#2f6763;min-height:32px;padding-top:14px;border-top:1px solid #e0e6da}
@media(hover:hover) and (pointer:fine){.pw-audience-card:hover{transform:translateY(-2px);border-color:#9cb6a7;box-shadow:0 12px 25px #143f4c0a}.pw-footer>a:hover{text-decoration:underline;text-underline-offset:4px}}
@media(max-width:900px){.pw-stage{align-self:auto;aspect-ratio:1200/760;min-height:0}.pw-map{height:auto;min-height:0}.pw-audience-card{padding:22px 19px}.pw-audience-card h3{font-size:15px}.pw-audience-card p{font-size:12px}.pw-india{grid-template-columns:1fr;gap:14px}.pw-panel{min-height:0}}
@media(max-width:620px){.pw-stage{aspect-ratio:1200/760}.pw-map{height:auto;object-fit:contain;transform:none;aspect-ratio:1200/760}.bh-home .pw-header h2{font-size:33px;line-height:1.17}.pw-scene-top{max-width:55%;font-size:8px}.pw-outcome{padding:13px 14px;margin-top:17px}.pw-footer{margin-top:17px;padding-top:14px;gap:5px}.pw-footer .pw-note{flex-basis:100%;font-size:10px}.pw-footer>a{font-size:11px}.pw-india{margin-top:23px;padding:22px 20px}.pw-india h3{font-size:25px}.pw-india p{font-size:12px}.pw-audience-card{padding:22px}.pw-audience-number{margin-bottom:12px}.pw-audience-card h3{font-size:17px}.pw-audience-card p{font-size:13px;margin-bottom:17px}.pw-audience-link{min-height:38px}.pw-controls .pw-play{flex:1 1 140px}.pw-manual{flex:0 1 auto}.pw-controls .pw-status{flex-basis:100%}.pw-illustration-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){.pw-audience-card{transition:none!important}.pw-audience-card:hover{transform:none}}
@media print{.pw-audience-card{break-inside:avoid}.pw-layout{background:white}.pw-india{background:white}}
/* Preserve journey rhythm against shared homepage navigation and heading rules. */
.bh-home .pw-world .pw-steps a{padding:17px 15px}
.bh-home .pw-world .pw-panel h3{font-family:'Khetsi Playfair',Georgia,serif;font-weight:500;font-size:clamp(27px,2.4vw,35px)}
@media(max-width:1100px){.bh-home .pw-world .pw-panel h3{font-size:29px}}
@media(max-width:900px){.bh-home .pw-world .pw-steps a{padding:14px 16px}.bh-home .pw-world .pw-panel h3{font-size:31px}}
@media(max-width:620px){.bh-home .pw-world .pw-steps a{padding:13px 14px}.bh-home .pw-world .pw-panel h3{font-size:28px}}
.bh-home .pw-world .pw-steps{align-items:stretch}
