/* Reference mechanics in PNP's own type/palette. No selectors reach the opening. */
#pnp-current-site :is(.ag-audiences,.ag-calculator,.ag-focus){--ag-ink:#173b2e;--ag-paper:#f5f4eb;--ag-sage:#e9ece4;--ag-accent:#d3e8b4;font-family:"DM Sans",sans-serif;color:var(--ag-ink);background:var(--ag-sage);position:relative;isolation:isolate}
#pnp-current-site :is(.ag-audiences,.ag-calculator,.ag-focus) *{box-sizing:border-box}
#pnp-current-site .ag-shell{max-width:1280px;margin:auto;padding-inline:40px}
#pnp-current-site .ag-label{font-size:12px;line-height:1.5;font-weight:650;letter-spacing:.14em;text-transform:uppercase;margin:0 0 30px}
#pnp-current-site :is(.ag-audiences,.ag-calculator,.ag-focus) :is(h2,h3){font:500 clamp(36px,4.3vw,62px)/1.08 "DM Sans",sans-serif;letter-spacing:-.045em;margin:0;color:inherit}
#pnp-current-site :is(.ag-audiences,.ag-calculator,.ag-focus) em{font-family:"DM Serif Display",serif;font-weight:400}
#pnp-current-site .ag-intro{padding-block:100px 70px;display:grid;grid-template-columns:1.5fr 1fr;gap:44px 100px;align-items:end}
#pnp-current-site .ag-intro>p{font-size:18px;line-height:1.7;color:#4d6053;margin:0;max-width:420px}
#pnp-current-site .ag-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
#pnp-current-site .ag-links a{padding:13px 20px;border:1px solid #bac8b2;border-radius:40px;font-size:13px;color:#173b2e;text-decoration:none}
#pnp-current-site .ag-story{height:195svh;position:relative;scroll-margin-top:0;--shade:0;--clip:inset(10% 4% 10% 50% round 18px);--scale:1.08;--photo-y:0px;--copy-y:0px}
#pnp-current-site .ag-stage{position:sticky;top:0;height:100svh;min-height:600px;max-height:1100px;overflow:hidden;background:#e9ece4}
#pnp-current-site #ag-fitness .ag-stage{background:#dce3d8}
#pnp-current-site .ag-image{position:absolute;inset:0;clip-path:var(--clip)}
#pnp-current-site .ag-image img{width:100%;height:100%;object-fit:cover;object-position:65% center;transform:translateY(var(--photo-y)) scale(var(--scale));display:block}
#pnp-current-site .ag-shade{position:absolute;inset:0;opacity:var(--shade);background:linear-gradient(90deg,rgba(12,34,25,.95),rgba(12,34,25,.74) 36%,rgba(12,34,25,.15) 72%);pointer-events:none}
#pnp-current-site .ag-copy{position:absolute;z-index:2;top:50%;left:max(40px,calc((100% - 1200px)/2));width:43%;max-width:590px;transform:translateY(calc(-50% + var(--copy-y)));color:#173b2e;transition:color .35s}
#pnp-current-site .ag-copy h3{font-size:clamp(36px,4vw,58px)}
#pnp-current-site .ag-copy>p:not(.ag-label){font-size:17px;line-height:1.65;max-width:450px;margin:26px 0;color:inherit}
#pnp-current-site .ag-button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:19px 25px;border-radius:7px;background:#173b2e;color:#f5f4eb;text-decoration:none;font-size:14px;font-weight:600;transition:background .35s,color .35s}
#pnp-current-site .ag-button span{font-size:24px;line-height:1}
#pnp-current-site .ag-expanded .ag-copy{color:#f5f4eb}
#pnp-current-site .ag-expanded em{color:#d3e8b4}
#pnp-current-site .ag-expanded .ag-button{color:#173b2e;background:#d3e8b4}
#pnp-current-site .ag-scroll{position:absolute;bottom:30px;left:max(40px,calc((100% - 1200px)/2));font-size:10px;letter-spacing:.16em;text-transform:uppercase;opacity:calc(1 - var(--shade))}
#pnp-current-site .ag-stack{padding-block:100px 120px}
#pnp-current-site .ag-stack header{margin-bottom:64px}
#pnp-current-site .ag-card{position:sticky;top:var(--ag-card-top,25px);min-height:410px;border:1px solid #bcc9ae;border-radius:24px;padding:64px 56px;display:grid;grid-template-columns:1fr 2.7fr;gap:40px;background:#dce6ce;margin-bottom:30px;transform-origin:center top;box-shadow:0 20px 40px -30px #173b2e55}
#pnp-current-site .ag-card:nth-of-type(2){top:var(--ag-card-top,45px);background:#173b2e;color:#f5f4eb;border-color:#365346}
#pnp-current-site .ag-card:nth-of-type(3){top:var(--ag-card-top,65px);background:#d3e8b4}
#pnp-current-site .ag-card:nth-of-type(2) em{color:#d3e8b4}
#pnp-current-site .ag-number{font-size:110px;letter-spacing:-.08em;font-weight:400;opacity:.23;line-height:1}
#pnp-current-site .ag-card h3{font-size:clamp(32px,3.4vw,48px)}
#pnp-current-site .ag-card a{display:inline-block;margin-top:44px;color:inherit;text-decoration:none;border-bottom:1px solid currentColor;padding:8px 0;font-size:14px;font-weight:600}
#pnp-current-site .ag-calculator{background:#173b2e;color:#f5f4eb;padding-block:100px}
#pnp-current-site .ag-calc-heading{max-width:750px;margin:0 auto 54px;text-align:center}
#pnp-current-site .ag-calc-heading>p:last-child{font-size:17px;line-height:1.6;color:#cad6c7;margin-top:24px}
#pnp-current-site .ag-calc-grid{display:grid;grid-template-columns:1fr 1fr;background:#f5f4eb;color:#173b2e;border-radius:24px;overflow:hidden}
#pnp-current-site .ag-controls,#pnp-current-site .ag-result{padding:48px 40px;min-width:0}
#pnp-current-site .ag-controls>label{display:flex;justify-content:space-between;align-items:center;margin:36px 0 20px;font-size:16px;font-weight:600;gap:12px}
#pnp-current-site #ag-count{padding:8px 14px;background:#e4eadb;border-radius:7px;font-size:24px;font-variant-numeric:tabular-nums}
#pnp-current-site #ag-patients{width:100%;height:6px;appearance:none;border:0;border-radius:9px;background:linear-gradient(to right,#173b2e var(--fill),#d6ddce var(--fill));cursor:pointer;margin:15px 0}
#pnp-current-site #ag-patients::-webkit-slider-thumb{appearance:none;width:24px;height:24px;border-radius:50%;background:#d3e8b4;border:6px solid #173b2e;box-shadow:0 0 0 2px #d3e8b4}
#pnp-current-site #ag-patients::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#d3e8b4;border:5px solid #173b2e}
#pnp-current-site .ag-range-ends{display:flex;justify-content:space-between;font-size:11px;color:#5d6e60;margin:12px 0 34px}
#pnp-current-site .ag-margin{border-top:1px solid #ccd5c3;padding-top:28px;display:flex;justify-content:space-between;align-items:center;gap:14px}
#pnp-current-site .ag-margin label{font-weight:600;font-size:14px}
#pnp-current-site .ag-margin p,#pnp-current-site .ag-assumption{font-size:12px;color:#566957;line-height:1.6}
#pnp-current-site .ag-money-input{display:flex;align-items:center;gap:4px;border:1px solid #afbea3;border-radius:7px;padding:10px;flex-shrink:0}
#pnp-current-site #ag-margin{width:72px;border:0;background:transparent;font:500 16px "DM Sans",sans-serif;color:#173b2e}
#pnp-current-site .ag-presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
#pnp-current-site .ag-presets button{padding:10px 14px;border:1px solid #becbb4;border-radius:40px;background:transparent;color:#173b2e;cursor:pointer;font:500 12px "DM Sans",sans-serif}
#pnp-current-site .ag-presets button[aria-pressed=true]{background:#dce6ce;border-color:#173b2e}
#pnp-current-site .ag-result{background:#e9efdf;border-left:1px solid #d5deca;display:flex;flex-direction:column}
#pnp-current-site #ag-monthly{display:block;font-size:clamp(36px,5.4vw,78px);letter-spacing:-.055em;line-height:1.15;font-variant-numeric:tabular-nums;margin:14px 0 34px;overflow-wrap:anywhere}
#pnp-current-site .ag-annual{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #c5d2b7;padding-top:26px;font-size:13px}
#pnp-current-site #ag-annual{font-size:24px;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
#pnp-current-site #ag-equation{font-size:12px;line-height:1.6;color:#52664e;margin:24px 0 32px}
#pnp-current-site .ag-result .ag-button{margin-top:auto}
#pnp-current-site .ag-calc-note{font-size:12px;line-height:1.8;color:#c1cfba;text-align:center;max-width:990px;margin:28px auto 0}
#pnp-current-site :is(.ag-audiences,.ag-calculator,.ag-focus) :is(a,button,input):focus-visible{outline:3px solid #8eaa5b;outline-offset:5px}
#pnp-current-site .ag-focus{background:#173b2e;color:#f5f4eb;padding-block:110px 80px}
#pnp-current-site .ag-focus h2{font-size:clamp(45px,6.7vw,96px);letter-spacing:-.055em;max-width:1050px}
#pnp-current-site .ag-focus em{color:#d3e8b4}
#pnp-current-site .ag-focus-bottom{display:flex;justify-content:space-between;align-items:end;border-top:1px solid #557361;margin-top:60px;padding-top:32px;gap:32px}
#pnp-current-site .ag-focus-bottom p{font-size:20px;line-height:1.6;color:#c8d4c5;margin:0}
#pnp-current-site .ag-focus-bottom strong{font-weight:500;color:#f5f4eb}
#pnp-current-site .ag-focus a{color:#d3e8b4;text-decoration:none;border-bottom:1px solid #89a37b;padding-bottom:8px}
#pnp-current-site .ag-edge-focus .fs-edge-grid{grid-template-columns:1fr!important;max-width:1000px;margin-inline:auto}
#pnp-current-site .ag-edge-focus .fs-edge-campaign{max-width:900px;margin-inline:auto;width:100%}
#pnp-current-site .ag-motion-off .ag-story{height:auto}
#pnp-current-site .ag-motion-off .ag-stage{position:relative}
#pnp-current-site .ag-motion-off .ag-card{position:relative;top:auto;transform:none!important;filter:none!important}
@media(max-width:760px){
 #pnp-current-site .ag-shell{padding-inline:24px}
 #pnp-current-site .ag-intro{grid-template-columns:1fr;gap:28px;padding-block:64px 40px}
 #pnp-current-site .ag-intro>p{font-size:16px}
 #pnp-current-site .ag-links{grid-column:auto;margin-top:0;gap:8px}
 #pnp-current-site .ag-links a{font-size:12px;padding:11px 14px}
 #pnp-current-site .ag-story{height:170svh;--clip:inset(3% 20px 53% 20px round 14px)}
 #pnp-current-site .ag-stage{height:100svh;min-height:700px}
 #pnp-current-site .ag-image img{object-position:30% center}
 #pnp-current-site #ag-medspas .ag-image img{object-position:center center}
 #pnp-current-site .ag-audiences:not(.ag-motion-off) #ag-medspas .ag-image{inset:var(--mobile-photo-inset,3% 20px 53%);clip-path:none;border-radius:var(--mobile-photo-radius,14px);overflow:hidden}
 #pnp-current-site .ag-shade{background:linear-gradient(0deg,rgba(12,34,25,.98) 0%,rgba(12,34,25,.92) 45%,rgba(12,34,25,.12) 95%)}
 #pnp-current-site .ag-copy{top:49%;left:24px;width:calc(100% - 48px);max-width:none;transform:translateY(var(--copy-y))}
 #pnp-current-site .ag-copy .ag-label{font-size:10px;margin-bottom:16px}
 #pnp-current-site .ag-copy h3{font-size:clamp(30px,8.4vw,40px)}
 #pnp-current-site .ag-copy>p:not(.ag-label){font-size:14px;line-height:1.55;margin:18px 0}
 #pnp-current-site .ag-button{padding:15px 20px;font-size:13px}
 #pnp-current-site .ag-scroll{display:none}
 #pnp-current-site .ag-stack{padding-block:64px}
 #pnp-current-site .ag-stack header{margin-bottom:40px}
 #pnp-current-site .ag-card{grid-template-columns:1fr;gap:26px;padding:32px 26px;min-height:430px;top:var(--ag-card-top,15px)}
 #pnp-current-site .ag-card:nth-of-type(2){top:var(--ag-card-top,30px)}#pnp-current-site .ag-card:nth-of-type(3){top:var(--ag-card-top,45px)}
 #pnp-current-site .ag-number{font-size:66px}
 #pnp-current-site .ag-card .ag-label{font-size:10px;margin-bottom:22px}
 #pnp-current-site .ag-card h3{font-size:31px}
 #pnp-current-site .ag-card a{margin-top:24px}
 #pnp-current-site .ag-calculator{padding-block:64px}
 #pnp-current-site .ag-calc-grid{grid-template-columns:1fr;border-radius:18px}
 #pnp-current-site .ag-controls,#pnp-current-site .ag-result{padding:30px 24px}
 #pnp-current-site .ag-result{border-left:0;border-top:1px solid #d5deca}
 #pnp-current-site .ag-margin{align-items:start}
 #pnp-current-site .ag-money-input{padding:8px}#pnp-current-site #ag-margin{width:60px}
 #pnp-current-site #ag-monthly{font-size:clamp(32px,9.8vw,65px)}
 #pnp-current-site .ag-annual{flex-wrap:wrap}
 #pnp-current-site .ag-focus{padding-block:72px 50px}
 #pnp-current-site .ag-focus h2{font-size:clamp(38px,10.8vw,70px)}
 #pnp-current-site .ag-focus-bottom{align-items:start;flex-direction:column;margin-top:40px}
 #pnp-current-site .ag-focus-bottom p{font-size:18px}
 #pnp-current-site .ag-motion-off .ag-copy{position:relative;top:auto;left:auto;width:auto;padding:30px 24px}
 #pnp-current-site .ag-motion-off .ag-stage{height:auto;min-height:0;padding-top:320px}
 #pnp-current-site .ag-motion-off .ag-image{height:300px;inset:20px 20px auto;clip-path:none;border-radius:14px;overflow:hidden}
}
@media(prefers-reduced-motion:reduce){#pnp-current-site .ag-copy,#pnp-current-site .ag-button{transition:none}}

/* Legacy phone overflow rules must not create nested scroll containers. */
#pnp-current-site :is(.ag-audiences,.ag-story,.ag-stack){overflow:visible!important}

/* Audience details retain the existing numbered, stacking panels. */
#pnp-current-site .ag-detail{max-width:650px;margin-top:26px;font-size:16px;line-height:1.65}
#pnp-current-site .ag-detail p{margin:0 0 16px}
#pnp-current-site .ag-detail p:last-child{margin-bottom:0}
#pnp-current-site .ag-detail strong{font-weight:650}
@media(max-width:760px){#pnp-current-site .ag-detail{font-size:15px;line-height:1.6;margin-top:22px}}

/* Fit the creator and recording camera inside the expanding photo frame. */
@media(min-width:761px){#pnp-current-site .ag-audiences:not(.ag-motion-off) #ag-fitness .ag-image{inset:var(--fitness-photo-inset,10% 4% 10% 50%);clip-path:none;border-radius:var(--fitness-photo-radius,18px);overflow:hidden}}
#pnp-current-site #ag-fitness .ag-image img{object-position:center 42%}
@media(max-width:760px){#pnp-current-site .ag-audiences:not(.ag-motion-off) #ag-fitness .ag-image{inset:var(--mobile-photo-inset,3% 20px 53%);clip-path:none;border-radius:var(--mobile-photo-radius,14px);overflow:hidden}}
