/* Contact-only application of the final Home page design system. */
.oreilly-contact{--oc-ink:var(--oreilly-color-ink);--oc-navy:var(--oreilly-color-navy);--oc-purple:var(--oreilly-color-primary);--oc-gold:var(--oreilly-color-gold);--oc-ivory:var(--oreilly-color-ivory);--oc-muted:#646779;--oc-line:var(--oreilly-color-line);--oc-container:var(--oreilly-container-width);--oc-space:var(--oreilly-space-section);background:#fff;color:var(--oc-ink);overflow:clip}
.oreilly-contact *,.oreilly-contact *:before,.oreilly-contact *:after{box-sizing:border-box}.oreilly-contact img{display:block;max-width:100%}.oreilly-contact a{text-decoration:none}.oreilly-contact h1,.oreilly-contact h2,.oreilly-contact h3,.oreilly-contact p{overflow-wrap:anywhere}.oreilly-contact .oreilly-contact__container{width:min(var(--oc-container),calc(100% - var(--oreilly-page-gutter-desktop)));max-width:none;min-width:0;margin-inline:auto;padding-inline:0}
.oreilly-contact__hero{position:relative;display:flex;width:auto;height:700px;min-height:0;margin:16px;align-items:stretch;overflow:hidden;border-radius:var(--oreilly-radius-feature);background:var(--oc-ink);isolation:isolate}.oreilly-contact__hero-image,.oreilly-contact__hero-shade{position:absolute;inset:0;width:100%;height:100%}.oreilly-contact__hero-image{z-index:-2;object-fit:cover;object-position:center 48%}.oreilly-contact__hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(12,8,38,.92),rgba(19,10,56,.74) 42%,rgba(19,10,56,.2) 78%),linear-gradient(0deg,rgba(8,7,27,.5),transparent 52%)}.oreilly-contact__hero-inner{position:relative;display:flex;height:100%;align-items:center}.oreilly-contact__hero-copy{width:min(720px,100%);max-width:720px;color:#fff}.oreilly-contact__eyebrow,.oreilly-contact__section-kicker{display:flex;align-items:center;gap:13px;margin:0 0 18px;color:var(--oc-gold);font-size:12px;font-weight:800;letter-spacing:.18em;line-height:1.2;text-transform:uppercase}.oreilly-contact__eyebrow:before,.oreilly-contact__section-kicker:before{width:38px;height:2px;background:currentColor;content:""}.oreilly-contact__hero h1{max-width:760px;margin:0;color:#fff;font-family:var(--font-secondary);font-size:clamp(3.8rem,6vw,6.7rem);font-weight:400;letter-spacing:-.05em;line-height:.94;white-space:normal}.oreilly-contact__hero-copy>p:not(.oreilly-contact__eyebrow){max-width:620px;margin:26px 0 34px;color:rgba(255,255,255,.82);font-size:clamp(1rem,1.25vw,1.18rem);line-height:1.7}.oreilly-contact__hero-location{position:absolute;right:0;bottom:34px;display:flex;align-items:center;gap:10px;margin:0;color:#fff;font-size:13px;font-weight:700;letter-spacing:.04em}.oreilly-contact__hero-location i{color:var(--oc-gold)}
.oreilly-contact__button{display:inline-flex;min-height:56px;align-items:center;justify-content:center;gap:18px;padding:13px 24px;border:1px solid transparent;border-radius:6px;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transition:background-color .25s,color .25s,border-color .25s,transform .25s}.oreilly-contact__button:hover{transform:translateY(-2px)}.oreilly-contact__button--light{background:#fff;color:var(--oc-navy)}.oreilly-contact__button--light:hover{background:var(--oc-gold);color:var(--oc-navy)}
.oreilly-contact__introduction,.oreilly-contact__information,.oreilly-contact__form-section,.oreilly-contact__visit,.oreilly-contact__community{padding-block:var(--oc-space)}
.oreilly-contact__intro-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(48px,7vw,96px)}.oreilly-contact__intro-image-wrap{position:relative;height:clamp(460px,43vw,590px);overflow:hidden;border-radius:var(--oreilly-radius-card);box-shadow:var(--oreilly-shadow-card)}.oreilly-contact__intro-image-wrap>img{width:100%;height:100%;object-fit:cover}.oreilly-contact__image-note{position:absolute;right:0;bottom:0;display:flex;width:min(330px,76%);min-height:90px;align-items:center;gap:20px;padding:18px 24px;border-radius:var(--oreilly-radius-card) 0 0;background:var(--oc-purple);color:#fff;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.oreilly-contact__image-note span{color:var(--oc-gold);font-family:var(--font-secondary);font-size:2.7rem;font-weight:400;line-height:1}.oreilly-contact__intro-copy{width:min(600px,100%)}.oreilly-contact__intro-copy h3,.oreilly-contact__section-heading h3,.oreilly-contact__form-intro h3,.oreilly-contact__visit-copy h3,.oreilly-contact__community h3{margin:0;color:var(--oc-ink);font-family:var(--font-secondary);font-size:clamp(3rem,4.45vw,4.8rem);font-weight:400;letter-spacing:-.04em;line-height:1;text-wrap:balance}.oreilly-contact__intro-rule{display:flex;justify-content:space-between;gap:20px;margin-top:34px;padding-top:18px;border-top:1px solid var(--oc-line);color:var(--oc-navy);font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.oreilly-contact__information{padding-top:0}.oreilly-contact__information>.container{padding:clamp(42px,5vw,68px);border-radius:var(--oreilly-radius-feature);background:var(--oc-ivory)}.oreilly-contact__section-heading{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.65fr);align-items:end;gap:clamp(34px,6vw,72px);margin-bottom:46px}.oreilly-contact__section-heading h3{max-width:820px}.oreilly-contact__section-heading>p{margin:0 0 5px;color:var(--oc-muted);font-size:15px;line-height:1.7}.oreilly-contact__contact-ledger{border-top:1px solid var(--oc-line)}.oreilly-contact__contact-row{    display: grid;
    grid-template-columns: 56px 64px minmax(0, 1fr);
    align-items: center;
    gap: clamp(20px, 3vw, 42px);
    padding: 30px;
    border-bottom: 1px solid var(--oc-line);
    transition: background-color .25s;}.oreilly-contact__contact-row:hover{background:rgba(255,255,255,.42)}.oreilly-contact__contact-number{color:rgba(32,20,95,.44);font-family:var(--font-secondary);font-size:1.4rem}.oreilly-contact__contact-icon{display:grid;width:56px;height:56px;place-items:center;border:1px solid var(--oc-line);border-radius:50%;color:var(--oc-purple);font-size:18px}.oreilly-contact__contact-row>div{display:grid;grid-template-columns:130px minmax(0,1fr) 160px;align-items:center;gap:28px;min-width:0}.oreilly-contact__contact-row p,.oreilly-contact__contact-row h4,.oreilly-contact__contact-row span{margin:0}.oreilly-contact__contact-row p{color:var(--oc-purple);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.oreilly-contact__contact-row h4,.oreilly-contact__contact-row h4 a{color:var(--oc-ink);font-family:var(--font-secondary);font-size:clamp(1.55rem,2.2vw,2.35rem);font-weight:400;letter-spacing:-.03em;line-height:1.15}.oreilly-contact__contact-row h4 a:hover{color:var(--oc-purple)}.oreilly-contact__contact-row>div>span{color:var(--oc-muted);font-size:13px;line-height:1.5;text-align:right}
.oreilly-contact__form-section{padding-top:0}.oreilly-contact__form-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(36px,5vw,72px);overflow:hidden;border-radius:var(--oreilly-radius-feature);background:var(--oc-navy)}.oreilly-contact .oreilly-contact__form-grid{padding:clamp(40px,5vw,64px)}.oreilly-contact__form-intro{position:relative;min-height:0;align-self:center;padding-block:8px;color:#fff}.oreilly-contact__form-intro h3{color:#fff}.oreilly-contact__form-intro>p:not(.oreilly-contact__section-kicker){max-width:390px;margin:24px 0 0;color:rgba(255,255,255,.72);font-size:16px;line-height:1.7}.oreilly-contact__form-index{position:static;margin-top:clamp(38px,5vw,58px);color:rgba(255,255,255,.14);font-family:var(--font-secondary);font-size:5.5rem;line-height:.72}.oreilly-contact__form-index span{display:block;margin:14px 0 0 4px;color:rgba(255,255,255,.52);font-family:var(--font-primary);font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.oreilly-contact__form-card{align-self:center;padding:clamp(28px,3.5vw,46px);border-radius:var(--oreilly-radius-card);background:#fff;box-shadow:var(--oreilly-shadow-card)}.oreilly-contact__field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.oreilly-contact__field{margin-bottom:18px}.oreilly-contact__field label{display:block;margin:0 0 8px;color:var(--oc-ink);font-size:12px;font-weight:800;letter-spacing:.065em;text-transform:uppercase}.oreilly-contact__field label span{color:#a72828}.oreilly-contact__field input,.oreilly-contact__field textarea{width:100%;min-height:54px;padding:13px 15px;border:1px solid var(--oc-line);border-radius:8px;background:#f8f7f4;color:var(--oc-ink);font:inherit;font-size:15px;transition:border-color .2s,box-shadow .2s,background-color .2s}.oreilly-contact__field textarea{min-height:140px;resize:vertical}.oreilly-contact__field input:focus,.oreilly-contact__field textarea:focus{border-color:var(--oc-purple);background:#fff;box-shadow:0 0 0 3px rgba(50,23,127,.1);outline:0}.oreilly-contact__field input[aria-invalid=true],.oreilly-contact__field textarea[aria-invalid=true]{border-color:#a72828}.oreilly-contact__error{margin:7px 0 0;color:#a72828;font-size:13px;line-height:1.5}.oreilly-contact__submit{display:flex;width:100%;min-height:58px;align-items:center;justify-content:space-between;padding:8px 8px 8px 22px;border:0;border-radius:8px;background:var(--oc-purple);color:#fff;font-size:13px;font-weight:800;letter-spacing:.065em;text-transform:uppercase;transition:background-color .25s}.oreilly-contact__submit span{display:grid;width:42px;height:42px;place-items:center;border-radius:6px;background:var(--oc-gold);color:var(--oc-navy);transition:transform .25s}.oreilly-contact__submit:hover{background:#26105f}.oreilly-contact__submit:hover span{transform:translateX(2px)}.oreilly-contact__form-card .alert{margin-bottom:20px;border-radius:8px}
.oreilly-contact__visit{padding-top:0}.oreilly-contact__visit-grid{display:grid;grid-template-columns:minmax(0,1.38fr) minmax(320px,.62fr);align-items:stretch;overflow:hidden;border-radius:var(--oreilly-radius-feature);background:var(--oc-ivory);box-shadow:var(--oreilly-shadow-card)}.oreilly-contact__visit-image{height:clamp(420px,42vw,560px);overflow:hidden}.oreilly-contact__visit-image img{width:100%;height:100%;object-fit:cover}.oreilly-contact__visit-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(36px,5vw,64px);background:var(--oc-ivory)}.oreilly-contact__visit-copy h3{font-size:clamp(2.75rem,4vw,4.25rem)}.oreilly-contact__visit-copy>p:not(.oreilly-contact__section-kicker){margin:24px 0 15px;color:var(--oc-muted);font-size:16px;line-height:1.7}.oreilly-contact__visit-copy address{margin:0 0 26px;color:var(--oc-ink);font-size:16px;font-style:normal;font-weight:700;line-height:1.65}.oreilly-contact__text-link{display:inline-flex;width:max-content;align-items:center;gap:10px;padding-bottom:7px;border-bottom:1px solid var(--oc-purple);color:var(--oc-purple);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.oreilly-contact__community{padding-top:0}.oreilly-contact__community-panel{position:relative;overflow:hidden;padding:clamp(50px,7vw,88px);border-radius:var(--oreilly-radius-panel);background:var(--oc-purple);color:#fff;isolation:isolate}.oreilly-contact__community-panel:after{position:absolute;right:-100px;bottom:-220px;z-index:-1;width:520px;height:520px;border:90px solid rgba(255,255,255,.055);border-radius:50%;content:""}.oreilly-contact__community h3{max-width:900px;color:#fff}.oreilly-contact__community-panel>p:not(.oreilly-contact__section-kicker){max-width:660px;margin:24px 0 32px;color:rgba(255,255,255,.78);font-size:17px;line-height:1.7}.oreilly-contact__community-actions{display:flex;flex-wrap:wrap;gap:12px}.oreilly-contact__button--gold{background:var(--oc-gold);color:var(--oc-navy)}.oreilly-contact__button--gold:hover{background:#fff;color:var(--oc-navy)}.oreilly-contact__button--outline{border-color:rgba(255,255,255,.5);color:#fff}.oreilly-contact__button--outline:hover{border-color:#fff;background:#fff;color:var(--oc-purple)}
@media(max-width:1024px){.oreilly-contact__hero{height:620px;margin:12px;border-radius:var(--oreilly-radius-panel)}.oreilly-contact__intro-grid{gap:48px}.oreilly-contact__section-heading{grid-template-columns:1fr;gap:20px}.oreilly-contact__section-heading>p{max-width:600px}.oreilly-contact__contact-row>div{grid-template-columns:110px minmax(0,1fr)}.oreilly-contact__contact-row>div>span{display:none}.oreilly-contact__form-grid{gap:44px}.oreilly-contact__form-index{font-size:5.5rem}.oreilly-contact__visit-grid{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr)}}
@media(max-width:900px){.oreilly-contact__intro-grid,.oreilly-contact__form-grid,.oreilly-contact__visit-grid{grid-template-columns:1fr}.oreilly-contact__intro-image-wrap{height:min(72vw,560px)}.oreilly-contact__form-index{display:none}.oreilly-contact__visit-image{height:min(68vw,520px)}}
@media(max-width:767px){.oreilly-contact>section>.container{width:min(var(--oc-container),calc(100% - var(--oreilly-page-gutter-mobile)))}.oreilly-contact__hero{height:580px;margin:8px;border-radius:16px}.oreilly-contact__hero-image{object-position:64% center}.oreilly-contact__hero-shade{background:linear-gradient(90deg,rgba(12,8,38,.92),rgba(19,10,56,.62)),linear-gradient(0deg,rgba(8,7,27,.55),transparent 54%)}.oreilly-contact__hero-inner{align-items:flex-end;padding-bottom:96px}.oreilly-contact__hero-copy{width:100%;min-width:0}.oreilly-contact__hero h1{width:8ch;max-width:100%;font-size:clamp(2.9rem,12vw,4.5rem);letter-spacing:-.04em;overflow-wrap:normal;word-break:normal}.oreilly-contact__hero-location{right:auto;bottom:28px;left:0}.oreilly-contact__introduction,.oreilly-contact__information,.oreilly-contact__form-section,.oreilly-contact__visit,.oreilly-contact__community{padding-block:82px}.oreilly-contact__information,.oreilly-contact__form-section,.oreilly-contact__visit,.oreilly-contact__community{padding-top:0}.oreilly-contact__intro-image-wrap{height:min(112vw,540px);border-radius:16px}.oreilly-contact__intro-copy h3,.oreilly-contact__section-heading h3,.oreilly-contact__form-intro h3,.oreilly-contact__visit-copy h3,.oreilly-contact__community h3{font-size:clamp(2.75rem,11vw,4rem)}.oreilly-contact__information>.container{padding:34px 24px;border-radius:16px}.oreilly-contact .oreilly-contact__form-grid{padding:34px 24px;border-radius:16px}.oreilly-contact__section-heading{margin-bottom:30px}.oreilly-contact__contact-row{grid-template-columns:38px 48px minmax(0,1fr);gap:14px;padding-block:24px}.oreilly-contact__contact-icon{width:46px;height:46px;font-size:15px}.oreilly-contact__contact-row>div{display:block}.oreilly-contact__contact-row p{margin-bottom:7px}.oreilly-contact__contact-row h4,.oreilly-contact__contact-row h4 a{font-size:clamp(1.35rem,6.5vw,1.9rem)}.oreilly-contact__field-row{grid-template-columns:1fr;gap:0}.oreilly-contact__form-card{padding:28px 20px;border-radius:14px}.oreilly-contact__visit-grid,.oreilly-contact__community-panel{border-radius:16px}.oreilly-contact__visit-image{height:min(78vw,470px)}.oreilly-contact__visit-copy{padding:38px 26px}.oreilly-contact__community-panel{padding:42px 26px}}
@media(max-width:480px){.oreilly-contact__hero-copy>p:not(.oreilly-contact__eyebrow){margin-block:20px 28px;line-height:1.6}.oreilly-contact__button{width:100%}.oreilly-contact__hero-location{max-width:90%;font-size:11px}.oreilly-contact__image-note{width:90%;min-height:76px;padding:14px 18px}.oreilly-contact__intro-rule{display:block}.oreilly-contact__intro-rule span{display:block}.oreilly-contact__intro-rule span+span{margin-top:8px}.oreilly-contact__contact-row{grid-template-columns:28px minmax(0,1fr)}.oreilly-contact__contact-icon{display:none}.oreilly-contact__contact-row h4,.oreilly-contact__contact-row h4 a{font-size:1.3rem}.oreilly-contact__community-actions{display:grid}.oreilly-contact__community-panel:after{right:-280px}}
@media(prefers-reduced-motion:reduce){.oreilly-contact__button,.oreilly-contact__submit,.oreilly-contact__submit span,.oreilly-contact__contact-row{transition:none}}
.oreilly-contact__intro-copy h3,.oreilly-contact__section-heading h3,.oreilly-contact__form-intro h3,.oreilly-contact__visit-copy h3,.oreilly-contact__community h3{margin:0;color:var(--oc-ink);font-family:var(--font-secondary);font-size:clamp(3rem,4.45vw,4.8rem);font-weight:400;letter-spacing:-.04em;line-height:1;text-wrap:balance}
.oreilly-contact__form-intro h3,.oreilly-contact__community h3{color:#fff}
@media(max-width:767px){.oreilly-contact__intro-copy h3,.oreilly-contact__section-heading h3,.oreilly-contact__form-intro h3,.oreilly-contact__visit-copy h3,.oreilly-contact__community h3{font-size:clamp(2.75rem,11vw,4rem)}}
