.ph-modal{position:fixed;inset:0;z-index:999999;display:none}
.ph-modal.is-open{display:block}
.ph-modal__backdrop{position:absolute;inset:0;transition:opacity .2s ease}
.ph-modal__backdrop--light{background:rgba(0,0,0,.35)}
.ph-modal__backdrop--medium{background:rgba(0,0,0,.58)}
.ph-modal__backdrop--dark{background:rgba(0,0,0,.78)}
.ph-modal__dialog{position:relative;max-width:720px;margin:6vh auto;background:#fff;border-radius:18px;box-shadow:0 22px 70px rgba(0,0,0,.24);overflow:hidden;width:calc(100% - 32px);max-height:88vh;display:flex;flex-direction:column;transform-origin:center center}
.ph-modal--small{max-width:420px}.ph-modal--medium{max-width:680px}.ph-modal--large{max-width:920px}.ph-modal--full{max-width:none;width:calc(100% - 24px);height:calc(100% - 24px);margin:12px}
.ph-modal--fade{animation:phmFadeIn .18s ease}.ph-modal--slide{animation:phmSlideIn .2s ease}.ph-modal--zoom{animation:phmZoomIn .18s ease}
.ph-modal__close{position:absolute;top:12px;right:12px;border:0;background:rgba(19,63,46,.08);width:42px;height:42px;border-radius:999px;font-size:28px;line-height:1;cursor:pointer;z-index:2;color:#133F2E}
.ph-modal__inner{display:flex;flex-direction:column;max-height:88vh}
.ph-modal__header,.ph-modal__body,.ph-modal__actions{padding:28px}
.ph-modal__header{padding-bottom:0}
.ph-modal__eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.08em;opacity:.72;margin-bottom:10px;font-weight:700}
.ph-modal__title{margin:0;font-size:32px;line-height:1.08;color:#0f271d}
.ph-modal__body{overflow:auto;padding-top:20px}
.ph-modal--align-center .ph-modal__header,.ph-modal--align-center .ph-modal__body,.ph-modal--align-center .ph-modal__actions{text-align:center}
.ph-modal__wysiwyg{color:#203229;line-height:1.6}
.ph-modal__wysiwyg > *:first-child{margin-top:0}.ph-modal__wysiwyg > *:last-child{margin-bottom:0}
.ph-modal__image{display:block;max-width:100%;height:auto;border-radius:14px;margin:0 0 18px}
.ph-modal__embed-wrap{width:100%;min-height:var(--phm-embed-height,600px);border-radius:14px;overflow:hidden;background:#f5f6f7}
.ph-modal__embed-wrap iframe,.ph-modal__video iframe{width:100%;min-height:var(--phm-embed-height,600px);border:0;display:block}
.ph-modal__video{border-radius:14px;overflow:hidden;background:#111}
.ph-modal__return-note{margin-top:16px;padding:12px 14px;border-radius:12px;background:#f5f8f6;color:#375245;font-size:14px}
.ph-modal__actions{display:flex;gap:12px;flex-wrap:wrap;padding-top:0}
.ph-modal--align-center .ph-modal__actions{justify-content:center}
.ph-modal__button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 18px;border-radius:999px;text-decoration:none;border:1px solid #133F2E;background:#133F2E;color:#fff;cursor:pointer;font-weight:600;transition:transform .12s ease,opacity .12s ease,background .12s ease,color .12s ease}
.ph-modal__button:hover{opacity:.96;transform:translateY(-1px);color:#fff}.ph-modal__button--secondary{background:#fff;color:#133F2E}.ph-modal__button--secondary:hover{color:#133F2E}
.phm-divi-trigger-wrap{display:flex}.phm-divi-align-left{justify-content:flex-start}.phm-divi-align-center{justify-content:center}.phm-divi-align-right{justify-content:flex-end}.phm-divi-trigger--full{width:100%}.phm-divi-trigger{display:inline-flex;align-items:center;gap:.45em}.phm-divi-trigger__icon{display:inline-flex;align-items:center;justify-content:center}
body.ph-modal-open{overflow:hidden}
@keyframes phmFadeIn{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}
@keyframes phmSlideIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes phmZoomIn{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
@media (max-width:767px){.ph-modal__dialog{width:calc(100% - 20px);margin:10px auto;max-height:calc(100vh - 20px);border-radius:16px}.ph-modal__header,.ph-modal__body,.ph-modal__actions{padding:20px}.ph-modal__title{font-size:26px}.ph-modal__actions{flex-direction:column}.ph-modal__button{width:100%}.ph-modal__embed-wrap iframe,.ph-modal__video iframe{min-height:420px}}
