/* DFocus AI reporter cameos: visual-only, no workflow links */
.dfocus-hero-agent{box-sizing:border-box;display:flex;align-items:center;gap:12px;width:min(330px,42%);min-height:118px;margin:14px 0 8px auto;padding:7px 14px 7px 7px;border:1px solid rgba(225,0,137,.62);border-radius:18px;background:linear-gradient(115deg,rgba(12,8,25,.93),rgba(49,11,62,.88));box-shadow:0 8px 28px rgba(196,0,130,.22);color:#fff;position:relative;z-index:1;overflow:hidden;animation:dfocus-cameo-enter .55s ease-out both}
.dfocus-hero-agent__photo{position:relative;flex:0 0 92px;width:92px;height:112px;border-radius:12px;overflow:hidden;background:#f4f2f5;box-shadow:0 0 0 1px rgba(255,255,255,.58),0 0 18px rgba(194,73,255,.24)}
.dfocus-hero-agent__photo img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;object-position:center bottom}
.dfocus-hero-agent__photo img.dfocus-hero-agent__sprite{position:absolute;width:300%;height:200%;object-fit:fill;left:var(--crop-x,0%);top:var(--crop-y,0%)}
.dfocus-hero-agent figcaption{min-width:0;display:grid;gap:4px;line-height:1.4;text-align:left;color:#f7eafa;font-size:.88rem}
.dfocus-hero-agent figcaption strong{color:#ffe7a5;font-size:1rem;letter-spacing:.02em}
.dfocus-hero-agent figcaption span{color:#f6d5f0}
@keyframes dfocus-cameo-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:800px){.dfocus-hero-agent{width:min(300px,88%);margin:12px auto 6px;min-height:94px;padding:6px 12px 6px 6px}.dfocus-hero-agent__photo{flex-basis:78px;width:78px;height:96px}.dfocus-hero-agent figcaption{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){.dfocus-hero-agent{animation:none}}
.ai-document-workflow{margin:24px 0;padding:clamp(18px,3vw,30px);border:1px solid rgba(206,0,128,.48);border-radius:18px;background:linear-gradient(145deg,rgba(19,14,31,.96),rgba(7,9,19,.92));box-shadow:0 10px 34px rgba(206,0,128,.11);color:#f4edf7;line-height:1.8}
.ai-document-workflow h3,.ai-document-workflow h4{color:#ffe6a2;line-height:1.5}
.ai-document-workflow h3{margin-top:0;font-size:clamp(22px,2.4vw,30px)}
.ai-document-workflow h4{margin:0 0 8px;font-size:1.08rem}
.ai-document-workflow ol{padding-left:1.5rem}
.ai-document-workflow li{margin:.55rem 0}
.ai-document-workflow li strong{color:#ffe6a2}
.ai-document-workflow a{color:#ffbfe7;text-decoration:underline;text-decoration-color:rgba(206,0,128,.7);text-underline-offset:3px}
.ai-agent-reference{margin:16px 0;padding:16px 18px;border-left:3px solid #ce0080;border-radius:0 12px 12px 0;background:rgba(206,0,128,.075)}
.ai-agent-security-reference{border-left-color:#7b83ff;background:rgba(94,107,255,.08)}
.ai-document-workflow .ai-note{padding:12px 14px;border-radius:10px;background:rgba(255,255,255,.055);font-size:.92rem}
@media(max-width:650px){.ai-document-workflow{padding:16px}.ai-agent-reference{padding:13px}}

/* Scoped transparent character decoration; existing styles preserved. */
.agent-transparent-art{float:right;width:clamp(140px,22%,220px);max-width:100%;margin:0 0 22px 28px;padding:0;border:0;background:none;pointer-events:none}
.agent-transparent-art img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 8px 15px #ce008033)}
section:has(>.agent-transparent-art){display:flow-root}
@supports(animation-timeline:view()){.agent-transparent-art{animation:agent-reveal linear both;animation-timeline:view();animation-range:entry 0% entry 80%}}
@keyframes agent-reveal{from{opacity:.2;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:800px){.agent-transparent-art{float:none;width:150px;margin:12px auto 20px}}
@media(prefers-reduced-motion:reduce){.agent-transparent-art{animation:none}}

/* Restore scoped spokesperson case gallery and flow layout. */
.dfocus-spokesperson-case{clear:both;overflow:hidden}.dfocus-spokesperson-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:1.25rem 0 1.6rem;padding:0;list-style:none;counter-reset:reporter-step}.dfocus-spokesperson-flow li{counter-increment:reporter-step;min-height:112px;padding:15px;border:1px solid rgba(217,0,133,.36);border-radius:14px;background:rgba(17,12,29,.82);color:#eee;line-height:1.65}.dfocus-spokesperson-flow li::before{content:"0" counter(reporter-step);display:block;margin-bottom:5px;color:#ffb7e7;font-size:.82rem;font-weight:700;letter-spacing:.1em}.dfocus-spokesperson-flow strong{display:block;margin-bottom:3px;color:#ffe29a;font-size:1rem}.dfocus-spokesperson-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:1.2rem 0}.dfocus-spokesperson-gallery figure{min-width:0;margin:0;padding:10px;border:1px solid rgba(217,0,133,.3);border-radius:16px;background:rgba(10,10,18,.86)}.dfocus-spokesperson-gallery img{display:block;width:100%;height:auto;border-radius:9px}.dfocus-spokesperson-gallery figcaption{padding:9px 4px 2px;color:#f4e7f4;font-size:.91rem;line-height:1.6}.dfocus-spokesperson-gallery figcaption strong{display:block;margin-bottom:3px;color:#ffe29a}.dfocus-spokesperson-note{padding:13px 15px;border-left:3px solid #d90085;background:rgba(255,255,255,.06);color:#e5d9e7;font-size:.92rem;line-height:1.75}
@media(max-width:700px){.dfocus-spokesperson-flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.dfocus-spokesperson-flow li{min-height:0;padding:12px}.dfocus-spokesperson-gallery{grid-template-columns:minmax(0,1fr);gap:14px}}
.dfocus-spokesperson-gallery img{max-width:100%;object-fit:contain}.dfocus-spokesperson-gallery figure{box-sizing:border-box}

/* Upper-body treatment scoped to the five requested service introductions. */
.agent-transparent-art.agent-upper-body{width:clamp(180px,26%,260px);aspect-ratio:1/1.12;overflow:hidden}
.agent-transparent-art.agent-upper-body img{width:100%;max-width:100%;height:auto;object-fit:contain;transform:scale(1.95);transform-origin:50% 0}
@media(max-width:800px){.agent-transparent-art.agent-upper-body{width:200px;max-width:65%;margin:12px auto 20px}}

@media(min-width:801px){
.ecommerce-agent-edge{position:relative;padding-top:270px}
.ecommerce-agent-edge .ecommerce-positioning{position:relative}
.ecommerce-agent-edge>.ecommerce-agent-edge__art{position:absolute;top:0;right:24px;float:none;width:240px;height:270px;aspect-ratio:auto;margin:0;animation:none;transform:none;opacity:1;z-index:1}
}

@media(min-width:801px){.ecommerce-agent-edge .ecommerce-positioning>.ecommerce-agent-edge__art{position:absolute;top:auto;bottom:100%;right:24px;float:none;width:240px;height:270px;aspect-ratio:auto;margin:0;animation:none;transform:none;opacity:1;z-index:1}}
@media(max-width:800px){.ecommerce-agent-edge .ecommerce-positioning{padding-bottom:0!important}.ecommerce-agent-edge .ecommerce-positioning>.ecommerce-agent-edge__art{position:relative;float:none;width:200px;max-width:75%;height:224px;margin:20px auto 0;animation:none;transform:none;opacity:1}}

/* Desktop introduction: independent copy and portrait columns, aligned to lower border. */
@media(min-width:801px){
.ecommerce-agent-edge{padding-top:0}
.ecommerce-agent-edge .ecommerce-positioning{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:28px;align-items:end;padding-bottom:0}
.ecommerce-agent-edge .ecommerce-agent-copy{min-width:0;padding-bottom:24px}
.ecommerce-agent-edge .ecommerce-positioning>.ecommerce-agent-edge__art{position:relative;top:auto;bottom:auto;right:auto;float:none;width:240px;height:285px;margin:0;align-self:end;animation:none;transform:none;opacity:1}
.ecommerce-agent-edge .ecommerce-agent-copy h2{margin-top:0}
}

/* GEO contact character: preserve complete horizontal artwork. */
.geo-agent-contact .geo-agent-contact__art{float:none;position:relative;width:260px;max-width:100%;height:291px;overflow:hidden;margin:0;animation:none;transform:none;opacity:1;padding:0;border:0;background:none;align-self:end}
.geo-agent-contact .geo-agent-contact__art img{width:100%;max-width:100%;height:auto;transform:none;object-fit:contain;object-position:center top}
@media(min-width:801px){.geo-agent-contact{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px;align-items:end;padding-bottom:0!important}.geo-agent-contact__copy{min-width:0;padding-bottom:24px}}
@media(max-width:800px){.geo-agent-contact{padding-bottom:0!important}.geo-agent-contact .geo-agent-contact__art{width:200px;height:224px;margin:20px auto 0}.geo-agent-contact__copy{min-width:0}}

/* Web design: complete-width portrait rests on the following panel border. */
.web-agent-lead{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:end;margin:0;padding:0}
.web-agent-lead__copy{min-width:0;padding-bottom:24px}
.web-agent-lead .web-agent-lead__art{float:none;position:relative;width:320px;max-width:100%;height:270px;overflow:hidden;margin:0;padding:0;border:0;background:none;animation:none;transform:none;opacity:1}
.web-agent-lead .web-agent-lead__art img{display:block;width:100%;max-width:100%;height:auto;transform:none;object-fit:contain;object-position:center top}
.web-agent-lead+.web-agent-lead__target{margin-top:0!important}
@media(max-width:800px){.web-agent-lead{display:block}.web-agent-lead__copy{padding-bottom:0}.web-agent-lead .web-agent-lead__art{width:280px;max-width:90%;height:236px;margin:16px auto 0}}

/* GEO portrait: waist-up emphasis within the existing contact panel. */
.geo-agent-contact .geo-agent-contact__art img{width:100%;max-width:100%;height:auto;transform:scale(1.55);transform-origin:54% 0;object-fit:contain}

/* Ecommerce desktop portrait: extend framing to the thighs. */
@media(min-width:801px){
.ecommerce-agent-edge .ecommerce-positioning>.ecommerce-agent-edge__art{height:350px}
.ecommerce-agent-edge .ecommerce-positioning>.ecommerce-agent-edge__art img{transform:scale(1.65);transform-origin:50% 0}
}

/* Enlarge GEO desktop artwork by widening its real layout column. */
@media(min-width:801px){
.geo-agent-contact{grid-template-columns:minmax(0,1fr) min(48%,484px);gap:24px}
.geo-agent-contact .geo-agent-contact__art{width:100%;max-width:484px;height:350px}
.geo-agent-contact .geo-agent-contact__art img{width:100%;max-width:100%;height:auto;transform:none;object-fit:contain;object-position:center top}
}

@media(min-width:801px){.geo-agent-contact .geo-agent-contact__art{left:50px}}

@media(max-width:800px){
.geo-agent-contact .geo-agent-contact__art{left:auto;width:min(100%,300px);max-width:100%;height:auto;aspect-ratio:auto;overflow:visible;margin:20px auto 0}
.geo-agent-contact .geo-agent-contact__art img{display:block;width:100%;max-width:100%;height:auto;transform:none;object-fit:contain}
}

@media(max-width:800px){
.geo-agent-contact .geo-agent-contact__art{aspect-ratio:1122/1402;height:auto;overflow:visible}
.geo-agent-contact .geo-agent-contact__art picture{display:block;width:100%;height:100%;aspect-ratio:1122/1402}
.geo-agent-contact .geo-agent-contact__art img{width:100%;height:100%;object-fit:contain;object-position:center bottom;transform:none}
}

/* Design subscription: character anchored inside advantage panel. */
.design-agent-panel{padding-bottom:0!important}
.design-agent-panel .design-agent-copy{min-width:0}
.design-agent-panel>.design-agent-art{position:relative;float:none;width:240px;max-width:100%;height:285px;aspect-ratio:auto;margin:0;animation:none;transform:none;opacity:1;align-self:end;overflow:hidden}
.design-agent-panel>.design-agent-art img{width:100%;max-width:100%;height:auto;transform:scale(1.95);transform-origin:50% 0;object-fit:contain}
@media(min-width:801px){.design-agent-panel{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:28px;align-items:end}.design-agent-panel .design-agent-copy{padding-bottom:24px}}
@media(max-width:800px){.design-agent-panel>.design-agent-art{width:200px;height:224px;margin:20px auto 0}}

@media(max-width:800px){.geo-agent-contact .geo-agent-contact__art{width:min(75%,225px);max-width:75%}}

/* Graphic subscription mascot: unchanged scale in its own panel column. */
.graphic-agent-panel .graphic-agent-copy{min-width:0}
.graphic-agent-panel>.graphic-agent-art{position:relative;float:none;width:220px;max-width:100%;height:auto;margin:0;animation:none;transform:none;opacity:1;align-self:end}
.graphic-agent-panel>.graphic-agent-art img{display:block;width:100%;max-width:100%;height:auto;transform:none;object-fit:contain}
@media(min-width:801px){.graphic-agent-panel{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:28px;align-items:end}}
@media(max-width:800px){.graphic-agent-panel>.graphic-agent-art{width:150px;margin:20px auto 0}}

/* Mobile portrait has a flat waist edge directly on the panel border. */
@media(max-width:800px){
.geo-agent-contact{padding-bottom:0!important}
.geo-agent-contact .geo-agent-contact__art{aspect-ratio:1122/1234;overflow:hidden;margin-bottom:0}
.geo-agent-contact .geo-agent-contact__art picture{position:relative;display:block;width:100%;height:auto;aspect-ratio:1122/1234;overflow:hidden}
.geo-agent-contact .geo-agent-contact__art img{position:absolute;top:0;left:0;display:block;width:100%;max-width:100%;height:auto;transform:none;object-fit:contain}
}

/* FAQ payment explanation and mascot occupy separate columns. */
.faq-payment-agent-copy{min-width:0}
.faq-payment-agent-row>.faq-payment-agent-art{float:none;position:relative;width:220px;max-width:100%;height:auto;margin:0;animation:none;transform:none;opacity:1;align-self:end}
.faq-payment-agent-row>.faq-payment-agent-art img{width:100%;max-width:100%;height:auto;transform:none;object-fit:contain}
@media(min-width:801px){.faq-payment-agent-row{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:28px;align-items:end}}
@media(max-width:800px){.faq-payment-agent-row>.faq-payment-agent-art{width:150px;margin:20px auto}}

.case-agent-mobile{display:none!important}
@media(max-width:800px){.case-agent-desktop{display:none!important}.case-agent-mobile{display:block!important;float:none;width:150px;max-width:100%;margin:20px auto;animation:none;transform:none;opacity:1}}

.maintenance-agent-intro{display:grid!important;grid-template-columns:200px minmax(0,1fr);gap:28px;align-items:center;padding-bottom:21px!important}
.maintenance-agent-intro .maintenance-agent-copy{min-width:0}
.maintenance-agent-intro>.maintenance-agent-girl{position:relative;float:none;width:200px;max-width:100%;height:auto;margin:0;animation:none;transform:none;opacity:1}
.maintenance-agent-intro>.maintenance-agent-girl img{display:block;width:100%;max-width:100%;height:auto;transform:none;object-fit:contain}
.maintenance-agent-intro+#plans{padding-top:21px}
.maintenance-agent-intro+#plans>h2:first-child{margin-top:15px}
@media(max-width:700px){.maintenance-agent-intro{grid-template-columns:minmax(0,1fr);gap:16px}.maintenance-agent-intro>.maintenance-agent-girl{width:150px;margin:0 auto}}

.ai-output-with-duo{position:relative}
.ai-output-duo{display:block}
.ai-output-duo img{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;background:none}
@media(min-width:701px){.ai-output-with-duo .ai-output-duo{position:absolute;left:calc(100% + 18px);bottom:0;width:100%;padding:0 12px;box-sizing:border-box}}
@media(max-width:700px){.ai-output-with-duo .ai-output-duo{position:static;width:min(100%,260px);margin:14px auto}}

@media(max-width:700px){.maintenance-agent-intro>.maintenance-agent-girl{width:172.5px}}

/* Mobile pug portraits: 20 percent larger at their approved locations. */
@media(max-width:800px){
.case-agent-mobile{width:180px}
.faq-payment-agent-row>.faq-payment-agent-art{width:180px}
.graphic-agent-panel>.graphic-agent-art{width:180px}
}

.maintenance-plan-girl{display:none!important}
@media(max-width:700px){
.maintenance-agent-intro>.maintenance-agent-girl{display:none!important}
.maintenance-agent-intro{gap:0}
.maintenance-plan-girl{display:block!important;float:none;position:relative;width:172.5px;max-width:100%;height:auto;margin:20px auto;animation:none;transform:none;opacity:1}
.maintenance-plan-girl img{display:block;width:100%;height:auto;max-width:100%;transform:none;object-fit:contain}
}
