/* Release A. Uses the existing site's type, color and spacing tokens. */
.press-page{padding:0 var(--gutter)}
.press-opening{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);padding:clamp(40px,5vw,80px) 0 clamp(64px,7vw,110px);align-items:start}
.press-opening .breadcrumb,.press-opening>.eyebrow{grid-column:1/-1}
.press-opening h1{grid-column:1/-1;font-size:clamp(42px,4.8vw,76px);max-width:28ch;margin:0 0 clamp(36px,4vw,64px)}
.press-opening h1 em{display:block;font-weight:inherit}
.press-intro{grid-column:1/6;grid-row:4;padding-top:12px}
.press-intro .lead-copy{margin:0;font-size:clamp(20px,1.7vw,25px);line-height:1.65}
.press-portrait{grid-column:7/-1;grid-row:4;margin:0}
.press-portrait .photo-window{display:block;width:100%;overflow:visible}
.press-portrait img{display:block;width:100%;height:auto;object-fit:contain;transform:none}
.press-portrait .photo-label{padding:12px 0 0}
.press-section{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);border-top:1px solid var(--hair);padding:clamp(36px,4vw,64px) 0 clamp(44px,5vw,76px)}
.press-section>h2{grid-column:1/5;margin:0;font-size:clamp(31px,3vw,46px);line-height:1.1;max-width:15ch}
.press-section-body{grid-column:6/12;min-width:0}
.press-section-body p,.press-section-body li{font-size:var(--text);line-height:1.8}
.press-section-body p{margin:0 0 24px}
.press-section-body p:last-child{margin-bottom:0}
.press-speakers,.press-articles{list-style:none;padding:0;margin:0}
.press-speakers li+li{margin-top:28px}
.press-speakers{margin-bottom:28px}
.press-topics{list-style:none;margin:0;padding:0}
.press-topics li{margin-bottom:28px}
.press-topics li:last-child{margin-bottom:0}
.press-articles li{border-top:1px solid var(--hair)}
.press-articles li:last-child{border-bottom:1px solid var(--hair)}
.press-articles a,.press-unlinked{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:22px 0;min-height:44px}
.press-articles a:hover strong{text-decoration:underline;text-underline-offset:4px}
.press-articles .arrow{flex:none;font-family:var(--body)}
.press-weddings-section{margin:0 calc(-1 * var(--gutter));padding:clamp(48px,6vw,88px) var(--gutter);background:var(--dark);color:var(--on-dark)}
.press-weddings-heading{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,7vw,112px);align-items:start}
.press-weddings-section h2{margin:0;max-width:21ch;font-family:var(--serif);font-weight:400;color:inherit}
.press-weddings-section p{margin:0;font-family:var(--reading);font-size:clamp(18px,1.5vw,21px);line-height:1.65;font-weight:400;color:inherit}
.press-weddings-intro{max-width:48ch;padding-top:5px}
.press-weddings-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4vw,64px);list-style:none;margin:clamp(40px,5vw,72px) 0 36px;padding:0}
.press-weddings-list li{border-top:1px solid var(--dark-line);padding-top:24px;min-width:0}
.press-weddings-section .press-wedding-place:not(#_){font-family:var(--body);font-size:12px;line-height:1.5;letter-spacing:.13em;text-transform:uppercase;margin-bottom:18px;color:var(--on-dark)}
.press-wedding-place strong{font-weight:500}
.press-weddings-section .press-weddings-closing:not(#_){max-width:none;font-family:var(--serif);font-size:22px;font-style:italic;padding-top:28px;border-top:1px solid var(--dark-line)}
.press-weddings-section+.press-section{border-top:0}
.press-contact{margin:0 0 28px}
.press-contact>div{display:grid;grid-template-columns:85px minmax(0,1fr);gap:18px;align-items:baseline;margin-bottom:12px}
.press-contact dt{font-family:var(--body);font-size:12px;letter-spacing:.04em}
.press-contact dd{margin:0;font-size:var(--text);line-height:1.8;overflow-wrap:anywhere}
.press-contact a{display:inline-block;min-height:44px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--gold)}
.press-page a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
@media(max-width:900px){
  .press-opening{grid-template-columns:repeat(6,minmax(0,1fr))}
  .press-opening h1{font-size:clamp(39px,6.5vw,62px);max-width:25ch}
  .press-intro{grid-column:1/-1;grid-row:auto;margin-bottom:32px;padding:0;max-width:54ch}
  .press-portrait{grid-column:1/-1;grid-row:auto;max-width:640px}
  .press-section{grid-template-columns:1fr;gap:28px}
  .press-section>h2,.press-section-body{grid-column:1;max-width:none}
  .press-section-body{max-width:65ch}
}
@media(max-width:400px){.press-contact>div{grid-template-columns:1fr;gap:0}.press-contact dt{margin-bottom:2px}}
@media(max-width:900px){.press-weddings-heading{grid-template-columns:1fr;gap:24px}.press-weddings-intro{padding-top:0;max-width:60ch}}
@media(max-width:680px){.press-weddings-list{grid-template-columns:1fr;gap:30px;margin-top:36px}.press-weddings-list li{padding-top:22px}.press-weddings-section .press-wedding-place:not(#_){margin-bottom:12px}.press-weddings-section .press-weddings-closing{font-size:21px}}
