/* Campaign studio: architectural backdrop, physical creative, foreground controls. */
#pnp-current-site .cmo-studio {
  --cmo-ink:#183c30; --cmo-paper:#f3f3e9; --cmo-travel:0px;
  position:relative; isolation:isolate; background:#e9ece4; color:#162d25;
  padding:54px max(24px,calc((100% - 1200px)/2)) 28px;
  font-family:"DM Sans",sans-serif; overflow:clip;
}
#pnp-current-site .cmo-studio *{box-sizing:border-box}
#pnp-current-site .cmo-studio :is(.cmo-intro,.cmo-stage,.cmo-foot){overflow:visible!important;max-width:none!important}
#pnp-current-site .cmo-intro{display:grid;grid-template-columns:1.8fr 1fr;gap:70px;align-items:end;position:relative;z-index:3}
#pnp-current-site .cmo-eyebrow{display:flex;align-items:center;gap:11px;font-size:16px;font-weight:600;margin:0 0 24px;letter-spacing:-.02em}
#pnp-current-site .cmo-eyebrow>span{width:11px;height:11px;background:#285b43;border-radius:50%;box-shadow:inset 0 1px 2px #ffffffb3,0 1px 2px #122d2929}
#pnp-current-site #cmo-heading{font:600 clamp(43px,4.8vw,68px)/1.02 "DM Sans",sans-serif;letter-spacing:-.045em;margin:0;color:#173b2e}
#pnp-current-site #cmo-heading em{font-family:"DM Serif Display",serif;font-weight:400;letter-spacing:-.04em}
#pnp-current-site .cmo-intro-aside{padding:0 0 5px;max-width:330px}
#pnp-current-site .cmo-intro-aside>p{font-size:18px;line-height:1.6;margin:0 0 24px;color:#405348}
#pnp-current-site .cmo-apply{display:inline-flex;gap:28px;align-items:center;text-decoration:none;font-weight:600;font-size:16px;color:#183c30;border-bottom:1px solid #78917e;padding:8px 0}
#pnp-current-site .cmo-apply>span{font-size:24px;line-height:1}
#pnp-current-site .cmo-stage{position:relative;width:calc(100% + 80px);height:530px;margin:24px -40px 0;isolation:isolate}
#pnp-current-site .cmo-environment{position:absolute;inset:0;pointer-events:none}
#pnp-current-site .cmo-wall-type{position:absolute;top:0;left:0;right:0;text-align:center;font-size:clamp(84px,14.5vw,210px);font-weight:700;letter-spacing:-.08em;white-space:nowrap;line-height:1;color:#d2d9ce;text-shadow:0 2px 1px #fff9,0 -1px 1px #9eac9e77;transform:translateY(calc(var(--cmo-travel) * -.5));user-select:none}
#pnp-current-site .cmo-floor{position:absolute;top:51%;left:-100vw;right:-100vw;bottom:-32px;background:linear-gradient(180deg,#dce2d7 0,#eef0e9 48%,#e9ece4 100%);border-top:1px solid #f9faf4;box-shadow:0 -18px 60px #a6b9a222}
#pnp-current-site .cmo-object{position:absolute;z-index:2;top:88px;left:50%;width:83%;max-width:970px;height:360px;transform:translate(-50%,var(--cmo-travel));border-radius:12px;background:#bac4b5;padding:1px;box-shadow:0 2px 0 #fff,0 5px 0 #a4aea0,0 7px 0 #8d9b89,0 24px 26px -14px #263a3547,0 64px 65px -34px #273b356b}
#pnp-current-site .cmo-object-rim{width:100%;height:100%;border:7px solid #f7f8f1;border-radius:11px;background:#f7f8f1;box-shadow:inset 0 0 0 1px #43534133;overflow:hidden}
#pnp-current-site .cmo-view{width:100%;height:100%;display:grid;grid-template-columns:1.08fr 1fr;border-radius:5px;overflow:hidden}
#pnp-current-site .cmo-view[hidden]{display:none}
#pnp-current-site .cmo-creative-photo,#pnp-current-site .cmo-mail-art,#pnp-current-site .cmo-owner-photo{position:relative;min-width:0;overflow:hidden}
#pnp-current-site .cmo-view img{width:100%;height:100%;display:block;object-fit:cover}
#pnp-current-site .cmo-creative-photo img{object-position:45% center}
#pnp-current-site .cmo-photo-label{position:absolute;top:24px;left:25px;color:white;font-size:15px;font-weight:700;letter-spacing:.08em;text-shadow:0 1px 8px #183322}
#pnp-current-site .cmo-creative-type{background:#173b2e;color:#f0f1d9;padding:29px 36px 24px;position:relative;display:flex;flex-direction:column;justify-content:center}
#pnp-current-site .cmo-smallmark{position:absolute;right:30px;top:17px;color:#c9e1a7;font-size:37px;line-height:1}
#pnp-current-site .cmo-creative-kicker{font-size:13px;font-weight:500;line-height:1.4;margin:10px 0 24px}
#pnp-current-site .cmo-creative-head{font-size:clamp(29px,3.9vw,55px);font-weight:500;letter-spacing:-.035em;line-height:1.06;margin:0}
#pnp-current-site .cmo-creative-head em{font-family:"DM Serif Display",serif;font-weight:400;color:#d3e8b4}
#pnp-current-site .cmo-creative-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:25px;font-size:13px;border-bottom:1px solid #829d7b;padding-bottom:9px}
#pnp-current-site .cmo-creative-bottom>span:last-child{font-size:22px}
#pnp-current-site .cmo-dock{position:absolute;z-index:4;bottom:41px;left:50%;width:65%;max-width:730px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:9px;gap:5px;background:linear-gradient(180deg,#fcfcf5,#e7eadf);border:1px solid #fff;border-radius:12px;transform:translate(-50%,calc(var(--cmo-travel) * -1));box-shadow:0 4px 0 #c3cdbb,0 5px 0 #a4b29a,0 17px 18px -11px #183b3255,0 35px 40px -20px #24342f70}
#pnp-current-site .cmo-dock button{display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;min-height:65px;border:1px solid transparent;border-radius:7px;background:transparent;color:#526452;cursor:pointer;font:600 15px/1.3 "DM Sans",sans-serif;transition:background .18s,color .18s}
#pnp-current-site .cmo-dock button[aria-selected="true"]{background:#224b38;color:#f5f8ee;border-color:#173e2b;box-shadow:inset 0 1px 1px #a8c29f7a,0 2px 2px #82937855}
#pnp-current-site .cmo-dock button:hover:not([aria-selected="true"]){background:#dce5d4;color:#173b2e}
#pnp-current-site .cmo-dock svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.5;fill:none;flex-shrink:0}
#pnp-current-site .cmo-studio :is(a,button):focus-visible{outline:3px solid #397849;outline-offset:4px}
#pnp-current-site .cmo-foot{position:relative;z-index:5;display:flex;justify-content:space-between;gap:24px;border-top:1px solid #c8d0c2;padding-top:23px;font-size:13px;font-weight:500;color:#4a5c4d}
#pnp-current-site .cmo-foot p{margin:0}
#pnp-current-site .cmo-foot>div{display:flex;flex-wrap:wrap;gap:10px 24px}
#pnp-current-site .cmo-nurtures{grid-template-columns:1fr 1fr;background:#f8f5ea}
#pnp-current-site .cmo-mail-art img{object-position:34% center;filter:saturate(.75)}
#pnp-current-site .cmo-mail-art>span{position:absolute;bottom:23px;left:25px;color:#fff;letter-spacing:.12em;font-size:15px;font-weight:600}
#pnp-current-site .cmo-letter{padding:24px 36px;display:flex;flex-direction:column;color:#183b2d;background:repeating-linear-gradient(0deg,#eee9dc33 0 1px,transparent 1px 4px),#f8f5ea}
#pnp-current-site .cmo-letter-top{display:flex;justify-content:space-between;font-size:13px;font-weight:600;border-bottom:1px solid #bcc2ae;padding-bottom:14px}
#pnp-current-site .cmo-letter-head{font-size:clamp(32px,3.8vw,54px);font-weight:500;line-height:1.03;letter-spacing:-.055em;margin:24px 0}
#pnp-current-site .cmo-letter-head em{font-family:"DM Serif Display",serif;font-weight:400}
#pnp-current-site .cmo-letter-foot{font-size:14px;line-height:1.4;margin:auto 0 0}
#pnp-current-site .cmo-brand-type{background:#dae4ca;padding:32px 36px;color:#173b2e}
#pnp-current-site .cmo-brand-type .cmo-creative-head em{color:#27513b}
#pnp-current-site .cmo-brand-rule{height:1px;background:#a5b799;margin:28px 0 18px}
#pnp-current-site .cmo-brand-type>p:last-child{font-size:16px}
#pnp-current-site .cmo-owner-photo img{object-position:center 30%}
@media(min-width:1500px){#pnp-current-site .cmo-stage{height:630px}#pnp-current-site .cmo-object{height:420px}}
@media(max-width:900px){
 #pnp-current-site .cmo-studio{padding-top:54px}
 #pnp-current-site .cmo-intro{gap:32px;grid-template-columns:1.5fr 1fr}
 #pnp-current-site #cmo-heading{font-size:49px}
 #pnp-current-site .cmo-intro-aside>p{font-size:16px}
 #pnp-current-site .cmo-stage{width:calc(100% + 32px);margin-inline:-16px;height:520px}
 #pnp-current-site .cmo-object{top:88px;width:94%;height:335px}
 #pnp-current-site .cmo-creative-type,#pnp-current-site .cmo-letter,#pnp-current-site .cmo-brand-type{padding:24px}
 #pnp-current-site .cmo-dock{width:82%;bottom:39px}
 #pnp-current-site .cmo-dock button{font-size:14px;gap:7px}
 #pnp-current-site .cmo-creative-head{font-size:36px}
 #pnp-current-site .cmo-foot{flex-direction:column;gap:14px}
}
@media(max-width:600px){
 #pnp-current-site .cmo-studio{padding:38px 24px 26px}
 #pnp-current-site .cmo-intro{grid-template-columns:1fr;gap:23px}
 #pnp-current-site .cmo-eyebrow{font-size:14px;margin-bottom:18px}
 #pnp-current-site #cmo-heading{font-size:clamp(34px,10.3vw,61px);line-height:1.04;letter-spacing:-.035em}
 #pnp-current-site .cmo-intro-aside{max-width:380px}
 #pnp-current-site .cmo-intro-aside>p{font-size:16px;line-height:1.55;margin-bottom:10px}
 #pnp-current-site .cmo-apply{font-size:15px;padding-block:7px}
 #pnp-current-site .cmo-stage{width:calc(100% + 24px);height:640px;margin:32px -12px 0}
 #pnp-current-site .cmo-wall-type{top:8px;font-size:16.2vw;letter-spacing:-.06em}
 #pnp-current-site .cmo-floor{top:54%}
 #pnp-current-site .cmo-object{top:67px;width:94%;height:480px;border-radius:10px}
 #pnp-current-site .cmo-object-rim{border-width:5px;border-radius:9px}
 #pnp-current-site .cmo-view{grid-template-columns:1fr;grid-template-rows:210px 1fr}
 #pnp-current-site .cmo-creative-photo img{object-position:center 37%}
 #pnp-current-site .cmo-photo-label{top:17px;left:19px;font-size:12px}
 #pnp-current-site .cmo-creative-type{padding:22px 24px}
 #pnp-current-site .cmo-creative-kicker{font-size:12px;margin:0 0 15px}
 #pnp-current-site .cmo-creative-head{font-size:36px}
 #pnp-current-site .cmo-smallmark{top:12px;right:18px;font-size:29px}
 #pnp-current-site .cmo-creative-bottom{display:none}
 #pnp-current-site .cmo-dock{width:100%;bottom:40px;padding:6px;gap:3px;border-radius:10px}
 #pnp-current-site .cmo-dock button{flex-direction:column;gap:7px;min-height:69px;font-size:12px;border-radius:6px}
 #pnp-current-site .cmo-dock svg{width:20px;height:20px}
 #pnp-current-site .cmo-foot{font-size:12px;padding-top:20px}
 #pnp-current-site .cmo-foot>div{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}
 #pnp-current-site .cmo-letter{padding:17px 24px}
 #pnp-current-site .cmo-letter-head{font-size:32px;letter-spacing:-.035em;margin:15px 0}
 #pnp-current-site .cmo-letter-foot{font-size:12px;margin-bottom:12px}
 #pnp-current-site .cmo-letter-top{font-size:12px;padding-bottom:8px}
 #pnp-current-site .cmo-brand-type{padding:22px 24px}
 #pnp-current-site .cmo-brand-rule{margin:18px 0 12px}
 #pnp-current-site .cmo-brand-type>p:last-child{font-size:14px;margin:0}
 #pnp-current-site .cmo-owner-photo img{object-position:center 29%}
}
@media(prefers-reduced-motion:reduce){
 #pnp-current-site .cmo-stage{--cmo-travel:0px!important}
 #pnp-current-site .cmo-dock button{transition:none}
}
