/* Campaign illustrations supplement live text; no embedded image text is required to use the page. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.campaign-art{margin:0}
.campaign-image-link{display:block;background:transparent}
.campaign-art img{display:block;width:100%;height:auto;aspect-ratio:1672/941}
.campaign-art figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-top:14px;font-size:12px;color:var(--muted);line-height:1.6}
.campaign-art figcaption a{font-weight:600;text-underline-offset:4px;white-space:nowrap}
.offer-section{padding-bottom:96px}
.offer-section>.eyebrow{margin-bottom:28px}
.offer-art img,.phone-art img{mask-image:linear-gradient(to right,transparent,#000 2%,#000 98%,transparent),linear-gradient(to bottom,transparent,#000 3%,#000 96%,transparent);mask-composite:intersect}
.opening-film .film-frame{border-radius:0}
.opening-film .film-frame:after{display:none}
.page-home .opening-film .film-frame{height:auto;aspect-ratio:16/9}
.page-home .opening-film video{height:auto;aspect-ratio:16/9;object-fit:contain;object-position:center}
.offer-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding-top:32px;margin-top:24px;border-top:1px solid var(--rule)}
.offer-details h3{font-size:15px;line-height:1.4;margin-bottom:8px}
.offer-details p{font-size:13px;line-height:1.65;color:var(--muted)}
.campaign-disclosure{font-size:11px;line-height:1.7;color:var(--muted);margin-top:20px;max-width:100%}
.mary-composition{display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center;margin-top:64px}
.mary-stage{position:relative;min-width:0;height:600px}
.mary-backdrop{position:absolute;inset:160px 0 35px 40px;border:1px solid #485248;background:linear-gradient(135deg,#203128,#121712);border-radius:8px;transform:rotate(-5deg);padding:28px;text-align:right}
.mary-backdrop>span{font-size:9px;letter-spacing:.16em;color:#b2c0b3}
.mary-backdrop i{display:block;width:100px;height:46px;border-top:1px solid #526555;margin:22px 0 0 auto;opacity:.55}
.mary-portrait{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,400px);height:auto;mask-image:linear-gradient(to bottom,#000 82%,transparent 99%),linear-gradient(to right,transparent,#000 12%,#000 84%,transparent);mask-composite:intersect}
.mary-approval{position:absolute;bottom:44px;left:0;right:20px;display:flex;align-items:center;gap:16px;padding:23px;background:#f7f7f5;color:#151512;box-shadow:0 20px 50px #0005;transform:rotate(-2deg)}
.approval-dot{width:10px;height:10px;border-radius:50%;background:#287946;flex-shrink:0}
.mary-approval small{font-size:9px;letter-spacing:.13em;color:#596058}
.mary-approval strong{display:block;font-size:22px;margin:5px 0}
.mary-approval p{font-size:12px;color:#62625b}
.approval-arrow{margin-left:auto;font-size:24px}
.mary-message h3{font-family:var(--display);font-size:clamp(44px,5.2vw,68px);font-weight:800;line-height:1.04;letter-spacing:-.02em;margin:0 0 24px}
.mary-message>.eyebrow{color:#a9b9ac}
.mary-message>p:not(.eyebrow){font-size:18px;color:#e5e5df;max-width:370px}
.mary-message>p.mary-role{font-size:14px;line-height:1.8;color:#b4b2a9;margin-top:26px}
.mary-disclosure{display:block;color:#aaa99e;font-size:11px;margin-top:18px}
.phone-section{padding-bottom:88px}
.phone-intro{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:80px;align-items:end;margin-bottom:36px}
.phone-intro h2{font-size:clamp(44px,5vw,64px)}
.phone-intro>p{font-size:16px;color:var(--muted)}
.phone-exchange{display:grid;grid-template-columns:1fr 1.3fr .7fr;gap:32px;margin-top:28px;padding-top:24px;border-top:1px solid var(--rule)}
.phone-exchange p{font-size:14px;line-height:1.6}
.phone-exchange strong{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--green-ink);margin-bottom:8px}
.phone-next{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:28px}
.phone-next p{font-size:13px;color:var(--muted)}
@media(max-width:800px){.offer-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.phone-intro{gap:32px}.phone-exchange{gap:20px}.mary-composition{gap:28px}.mary-stage{height:480px}.mary-portrait{width:min(100%,320px)}.mary-backdrop{inset:120px 0 35px 20px}.mary-approval{padding:16px;gap:10px;right:0}.mary-approval strong{font-size:19px}.mary-approval p{font-size:11px}.mary-message h3{font-size:48px}}
@media(max-width:600px){
  .campaign-art figcaption{font-size:11px;gap:8px;flex-wrap:wrap;margin-top:12px}
  .campaign-art figcaption a{display:inline-flex;align-items:center;min-height:44px}
  .offer-details{grid-template-columns:minmax(0,1fr);margin-top:16px;padding-top:24px;gap:20px}
  .offer-details h3{font-size:17px;margin-bottom:6px}
  .offer-details p{font-size:16px}
  .campaign-disclosure{font-size:12px;margin-top:24px}
  .offer-section{padding-bottom:64px}
  .opening-film .film-frame{margin-inline:-20px}
  .mary-composition{grid-template-columns:1fr;gap:26px;margin-top:40px}
  .mary-stage{height:480px;max-width:380px;width:100%;margin:auto}
  .mary-message h3{font-size:52px}
  .mary-message>p:not(.eyebrow){font-size:17px}
  .mary-message>p.mary-role{font-size:15px}
  .mary-approval p{font-size:12px}
  .phone-section{padding-bottom:64px}
  .phone-intro{display:block;margin-bottom:28px}
  .phone-intro h2{font-size:48px}
  .phone-intro>p{margin-top:20px}
  .phone-exchange{grid-template-columns:minmax(0,1fr);gap:20px}
  .phone-exchange p{font-size:16px}
  .phone-exchange strong{font-size:11px}
  .phone-next{align-items:flex-start;flex-direction:column;gap:16px}
  .phone-next p{font-size:14px}
}
