/* Agency Partners | styled to match Mackasey's existing editorial system */
html {scroll-behavior:smooth;scroll-padding-top:6.2rem}
.ap-hero{padding-block:clamp(2.45rem,5.3vw,5.15rem) clamp(3rem,5.3vw,5rem)}
.ap-hero__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(310px,.92fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.ap-hero h1{font-size:clamp(2.4rem,4.05vw,3.65rem);max-width:100%;line-height:1.14;letter-spacing:-.025em;overflow-wrap:normal}
.ap-hero__accent{color:var(--olive);font-style:normal;font-size:.88em;font-weight:500;letter-spacing:-.025em}
.ap-hero__lede{font-size:clamp(1.06rem,1.34vw,1.2rem);color:var(--charcoal-mid);max-width:54ch;margin:1.5rem 0 1.1rem;line-height:1.74}
.ap-hero__lede strong{font-weight:600;color:var(--charcoal)}
.ap-channels{margin:0 0 1.55rem;padding-left:.95rem;border-left:2px solid var(--citron)}
.ap-channels__label{display:block;margin-bottom:.45rem;font-size:.63rem;line-height:1.3;text-transform:uppercase;font-weight:600;letter-spacing:.14em;color:var(--charcoal-soft)}
.ap-channels__list{display:flex;flex-wrap:wrap;column-gap:.8rem;row-gap:.32rem}
.ap-channels__list span{font-size:.81rem;line-height:1.5;font-weight:600;color:var(--charcoal)}
.ap-channels__list span:not(:last-child)::after{content:'·';padding-left:.8rem;color:var(--olive)}
.ap-hero__subnote{font-size:.76rem;color:var(--charcoal-soft);margin-top:1.2rem;max-width:57ch}
.ap-hero__panel{background:var(--charcoal);color:var(--ivory);padding:clamp(1.6rem,3.4vw,3rem);position:relative;overflow:hidden}
.ap-hero__panel::before{content:'';position:absolute;width:6rem;height:6rem;background:var(--citron);right:-4.4rem;top:-4.3rem;transform:rotate(45deg)}
.ap-panel__label{font-size:.65rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--citron);margin-bottom:1.1rem}
.ap-panel__title{font:400 clamp(1.65rem,2.5vw,2.5rem)/1.24 var(--display);max-width:19ch}
.ap-panel__title span{color:var(--citron);font-style:italic}
.ap-flow{list-style:none;counter-reset:none;display:grid;gap:0;margin:1.7rem 0 1.2rem;padding:0}
.ap-flow li{display:flex;align-items:start;gap:1rem;padding:1rem 0;border-top:1px solid rgba(250,248,243,.18)}
.ap-flow li span{font-size:.68rem;font-weight:600;color:var(--citron);letter-spacing:.12em;line-height:1.9}
.ap-flow p{font-size:.88rem;line-height:1.64;color:var(--on-dark)}
.ap-panel__end{border-top:2px solid var(--citron);padding-top:1rem;margin-top:1rem;font-size:.84rem;color:var(--on-dark-soft)}
.ap-ribbon{background:var(--stone);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ap-ribbon__inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.ap-ribbon__inner span{font-size:.71rem;line-height:1.5;letter-spacing:.05em;font-weight:600;padding:1.1rem .8rem;text-align:center;border-right:1px solid var(--line)}
.ap-ribbon__inner span:first-child{border-left:1px solid var(--line)}
.ap-section{padding-block:clamp(3.1rem,6vw,5.8rem)}
.ap-section__head{max-width:61rem;margin-bottom:2rem}
.ap-section__head h2{font-size:clamp(1.95rem,3.55vw,3rem);max-width:22ch}
.ap-section__head>p:not(.eyebrow){max-width:70ch;color:var(--charcoal-mid);margin-top:1rem;line-height:1.78}
.ap-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.9rem,2.4vw,2rem)}
.ap-feature{border-top:3px solid var(--citron);padding:1.35rem 0 0}
.ap-feature__n{display:block;font-size:.7rem;font-weight:600;color:var(--olive);letter-spacing:.12em;margin-bottom:.7rem}
.ap-feature h3{font-size:1.24rem;margin-bottom:.6rem}
.ap-feature p{font-size:.91rem;color:var(--charcoal-mid);line-height:1.7}
.ap-band{background:var(--charcoal);color:var(--ivory)}
.ap-program{padding-block:clamp(3.2rem,6vw,5.8rem);display:grid;grid-template-columns:1.03fr .97fr;gap:clamp(2rem,5vw,5rem);align-items:start}
.ap-program .eyebrow{color:var(--on-dark-soft)}.ap-program .eyebrow::before{background:var(--citron)}
.ap-program h2{font-size:clamp(2rem,3.4vw,3rem);margin-bottom:1.2rem;max-width:18ch}
.ap-program__intro>p:not(.eyebrow){font-size:.96rem;line-height:1.74;color:var(--on-dark-soft);max-width:55ch;margin-bottom:1rem}
.ap-program__intro .btn{margin-top:.75rem}
.ap-program__stats{border-top:2px solid var(--citron);display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.ap-stat{display:flex;flex-direction:column;padding:1.35rem .75rem 1.4rem 0;border-bottom:1px solid rgba(250,248,243,.18)}
.ap-stat+.ap-stat{padding-left:.85rem}
.ap-stat--wide{grid-column:1 / -1;padding-left:0!important;display:flex;flex-direction:row;gap:1.3rem;align-items:center}
.ap-stat__value{display:block;font:400 clamp(2.8rem,5.5vw,4.7rem)/1 var(--display);color:var(--citron);margin-bottom:.4rem}
.ap-stat--wide .ap-stat__value{font-size:clamp(1.8rem,2.8vw,2.5rem);margin:0;flex-shrink:0}
.ap-stat__label{font-size:.82rem;line-height:1.57;color:var(--on-dark)}
.ap-stat__fine{grid-column:1 / -1;font-size:.69rem;line-height:1.65;color:var(--on-dark-soft);padding-top:1.15rem}
.ap-proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.8rem,1.8vw,1.5rem)}
.ap-proof-card{display:flex;flex-direction:column;background:var(--white);border-top:3px solid var(--citron);padding:clamp(1.2rem,2.3vw,1.9rem);min-height:20.3rem}
.ap-proof-card:nth-child(2){background:var(--stone)}
.ap-proof-card__outlet{font-family:var(--display);font-size:1.85rem;line-height:1.2;margin-bottom:1.1rem;color:var(--charcoal)}
.ap-proof-card__category{text-transform:uppercase;letter-spacing:.1em;font-size:.66rem;font-weight:600;color:var(--olive);margin-bottom:.7rem}
.ap-proof-card h3{font-size:1.12rem;line-height:1.38;margin-bottom:.8rem}
.ap-proof-card>p:not(.ap-proof-card__outlet):not(.ap-proof-card__category){font-size:.83rem;color:var(--charcoal-mid);line-height:1.65;margin-bottom:1.25rem}
.ap-proof-card .arrow{margin-top:auto;font-size:.68rem}
.ap-proof-note{font-size:.72rem;color:var(--charcoal-soft);margin-top:1.2rem;max-width:85ch;line-height:1.68}
.ap-section--stone{background:var(--stone)}
.ap-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,2.2vw,2rem)}
.ap-benefits>div{border-top:2px solid var(--charcoal);padding-top:1.1rem}
.ap-benefits h3{font-size:1.16rem;margin-bottom:.5rem}
.ap-benefits p{font-size:.87rem;line-height:1.67;color:var(--charcoal-mid)}
.ap-volume{border-top:1px solid rgba(29,31,30,.22);margin-top:2rem;padding-top:1.2rem;color:var(--charcoal-mid);font-size:.9rem}
.ap-volume strong{color:var(--charcoal)}
.ap-podcast{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.ap-podcast h2{font-size:clamp(1.9rem,3.2vw,2.7rem);margin-bottom:1.1rem}
.ap-podcast>div>p:not(.eyebrow){color:var(--charcoal-mid);max-width:65ch;margin-bottom:.8rem}
.ap-muted{font-size:.79rem!important;color:var(--charcoal-soft)!important}
.ap-podcast__aside{border-left:3px solid var(--citron);padding-left:clamp(1.2rem,2.8vw,2.3rem)}
.ap-podcast__aside .ap-podcast__n{font:400 clamp(4.1rem,7.7vw,7rem)/1 var(--display);color:var(--charcoal);margin-bottom:.5rem}
.ap-podcast__aside>p:not(.ap-podcast__n){font-size:.92rem;line-height:1.5;max-width:20ch;color:var(--charcoal-mid);margin-bottom:1.1rem}
.ap-faq{background:var(--ivory);border-top:1px solid var(--line)}
.ap-faq__grid{display:grid;grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,5vw,5rem)}
.ap-faq__grid h2{font-size:clamp(1.95rem,3.4vw,2.75rem);max-width:15ch;margin-bottom:1rem}
.ap-faq__grid>div:first-child>p:not(.eyebrow){font-size:.93rem;color:var(--charcoal-mid)}
.ap-faq__questions details{border-top:1px solid var(--line);padding:1rem 0}
.ap-faq__questions details:last-child{border-bottom:1px solid var(--line)}
.ap-faq__questions summary{cursor:pointer;font-size:.93rem;font-weight:600;line-height:1.5;padding-right:1rem}
.ap-faq__questions details p{margin-top:.75rem;font-size:.85rem;color:var(--charcoal-mid);line-height:1.72;padding-right:1.7rem}
.ap-inquiry{background:var(--stone)}
.ap-inquiry__grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.ap-inquiry h2{font-size:clamp(2rem,3.4vw,3rem);max-width:16ch;margin-bottom:1.2rem}
.ap-inquiry__intro>p:not(.eyebrow){color:var(--charcoal-mid);font-size:.95rem;max-width:46ch;margin-bottom:1rem}
.ap-inquiry__email{margin-top:1.5rem}.ap-inquiry__email a{color:var(--olive);text-underline-offset:4px;font-weight:600}
.ap-form{background:var(--white);border-top:3px solid var(--citron);padding:clamp(1.3rem,3.2vw,2.5rem);display:grid;gap:1.15rem}
.ap-form__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.ap-form label{display:block;font-size:.75rem;font-weight:600;margin-bottom:.4rem;color:var(--charcoal)}
.ap-opt{color:var(--charcoal-soft);font-weight:400}
.ap-form input,.ap-form textarea,.ap-form select{font:inherit;font-size:.88rem;color:var(--charcoal);background:var(--ivory);border:1px solid var(--line);border-radius:0;padding:.77rem .83rem;min-height:2.75rem;width:100%;max-width:100%}
.ap-form input:focus-visible,.ap-form select:focus-visible,.ap-form textarea:focus-visible{outline:2px solid var(--olive);outline-offset:2px}
.ap-form textarea{resize:vertical;min-height:6rem}
.ap-form .btn{justify-self:start}
.ap-form__fine{font-size:.69rem;color:var(--charcoal-soft);line-height:1.64}
.ap-form__fine a{text-underline-offset:3px}
.ap-hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.ap-thankyou{min-height:50vh;padding-block:clamp(4rem,8vw,7rem)}
.ap-thankyou h1{font-size:clamp(2.5rem,5vw,4.2rem);max-width:17ch;margin-bottom:1.1rem}
.ap-thankyou p:not(.eyebrow){max-width:58ch;color:var(--charcoal-mid);margin-bottom:1.25rem}
@media(max-width:980px){.ap-hero__grid,.ap-program,.ap-inquiry__grid{grid-template-columns:1fr}.ap-hero h1{max-width:100%}.ap-hero__panel{max-width:47rem}.ap-benefits{grid-template-columns:repeat(2,1fr)}.ap-proof-grid{grid-template-columns:repeat(2,1fr)}.ap-program__stats{max-width:45rem}}
@media(max-width:700px){.ap-hero{padding-top:2rem}.ap-hero h1{font-size:clamp(2.15rem,7.7vw,3rem)}.ap-hero__accent{font-size:.86em}.ap-ribbon__inner{grid-template-columns:repeat(2,minmax(0,1fr))}.ap-ribbon__inner span{border-bottom:1px solid var(--line);font-size:.65rem}.ap-feature-grid,.ap-proof-grid,.ap-podcast,.ap-faq__grid{grid-template-columns:1fr}.ap-proof-card{min-height:unset}.ap-podcast__aside{border-left:0;border-top:3px solid var(--citron);padding:1.1rem 0 0}.ap-form__row{grid-template-columns:1fr}.ap-inquiry__grid{gap:1.4rem}.ap-form .btn{width:100%;justify-content:center}.ap-section{padding-block:2.8rem}}
@media(max-width:460px){.ap-program__stats{grid-template-columns:1fr}.ap-stat+.ap-stat{padding-left:0}.ap-stat--wide{grid-column:1;display:block}.ap-stat--wide .ap-stat__value{margin-bottom:.5rem}.ap-stat__fine{grid-column:1}.ap-ribbon__inner span{font-size:.61rem;padding:.82rem .4rem}}

/* Three editorial examples, with the longer Coastline case study treated as secondary proof. */
.ap-proof-card{min-width:0;min-height:21rem}
.ap-proof-card__outlet{font-size:clamp(1.35rem,2vw,1.85rem);overflow-wrap:anywhere}
.ap-case-study{margin-top:2.3rem;padding:clamp(1.3rem,2.3vw,2rem);background:var(--stone);border-left:3px solid var(--olive);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem 2.2rem;align-items:center}
.ap-case-study__eyebrow{font-size:.67rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--olive);margin-bottom:.6rem}
.ap-case-study h3{font-size:clamp(1.28rem,2vw,1.7rem);line-height:1.26;margin-bottom:.55rem}
.ap-case-study__copy>p:last-child{font-size:.87rem;color:var(--charcoal-mid);line-height:1.68;max-width:71ch}
.ap-case-study__link{font-size:.74rem;text-decoration:none;font-weight:600;text-transform:uppercase;letter-spacing:.055em;white-space:nowrap;border-bottom:1px solid var(--olive);padding-bottom:.45rem;color:var(--charcoal)}
.ap-case-study__link span:last-child{padding-left:.45rem;color:var(--olive)}
.ap-case-study__link:hover{color:var(--olive)}
@media(max-width:860px){.ap-case-study{grid-template-columns:1fr}.ap-case-study__link{justify-self:start}}
@media(max-width:700px){.ap-hero h1{line-height:1.17;letter-spacing:-.02em}.ap-hero__accent{font-size:.87em}.ap-proof-card{min-height:unset}.ap-case-study{margin-top:1.8rem}}
@media(max-width:390px){.ap-hero h1{font-size:2.15rem}}

/* Earned-media differentiation: visible before the first CTA, with no unrealistic link guarantee. */
.ap-hero__earned{max-width:57ch;margin:.1rem 0 1.35rem;padding:.9rem 1.1rem;border-left:3px solid var(--olive);background:var(--stone);font-size:.88rem;line-height:1.65;color:var(--charcoal-mid)}
.ap-hero__earned strong{display:block;color:var(--charcoal);font-weight:700;font-size:.96rem;margin-bottom:.2rem}
@media(max-width:700px){.ap-hero__earned{font-size:.84rem;padding:.78rem .88rem}}
