/* Only affects pages using the plugin's Contact template. */
.ra-contact-template-active .entry-header,
.ra-contact-template-active .entry-title,
.ra-contact-template-active .page-header,
.ra-contact-template-active .page-title,
.ra-contact-template-active .sharedaddy,
.ra-contact-template-active .sd-sharing-enabled,
.ra-contact-template-active .sd-sharing,
.ra-contact-template-active .a2a_kit,
.ra-contact-template-active .addtoany_share_save_container,
.ra-contact-template-active .heateor_sss_sharing_container,
.ra-contact-template-active .essb_links,
.ra-contact-template-active .ssba-wrap,
.ra-contact-template-active .social-share,
.ra-contact-template-active .share-buttons,
.ra-contact-template-active .wp-block-jetpack-sharing-buttons {
	display: none !important;
}

.ra-contact-page,
.ra-contact-page * { box-sizing: border-box; }
.ra-contact-page { background:#f7f8fc; color:#222434; overflow:hidden; }
.ra-contact-wrap { width:min(1160px, calc(100% - 34px)); margin:0 auto; }

.ra-contact-hero {
	position:relative;
	padding:58px 0 64px;
	background:
		radial-gradient(circle at 11% 25%, rgba(200,174,239,.24), transparent 21%),
		radial-gradient(circle at 91% 24%, rgba(218,200,247,.28), transparent 18%),
		linear-gradient(180deg,#fbf8ff 0%,#faf6ff 58%,#f7f8fc 100%);
	border-bottom:1px solid rgba(124,87,198,.08);
}
.ra-contact-hero-inner { display:grid; grid-template-columns:210px 1fr 210px; gap:24px; align-items:center; }
.ra-hero-copy { text-align:center; }
.ra-contact-kicker { margin:0 0 8px; color:#8b68c8; font-size:12px; line-height:1.3; font-weight:800; text-transform:uppercase; letter-spacing:.13em; }
.ra-hero-copy h1 { margin:0; color:#2b1d50; font-family:Georgia,'Times New Roman',serif; font-size:clamp(50px,6vw,78px); line-height:1; letter-spacing:-.035em; }
.ra-title-flourish { display:flex; justify-content:center; align-items:center; gap:9px; margin:13px 0 17px; color:#9b77d3; }
.ra-title-flourish span { width:64px; height:2px; background:linear-gradient(90deg,transparent,#a783dc,transparent); }
.ra-title-flourish i { font-style:normal; font-size:13px; }
.ra-contact-intro { max-width:680px; margin:0 auto; color:#505565; font-size:17px; line-height:1.7; }

.ra-hero-art { min-height:170px; position:relative; }
.ra-books-stack { width:190px; height:150px; margin:0 auto; position:relative; }
.ra-book { position:absolute; left:27px; width:138px; height:18px; border-radius:7px; box-shadow:0 8px 16px rgba(42,31,71,.08); }
.ra-book-1 { bottom:13px; background:linear-gradient(90deg,#65508f,#8d79b7); }
.ra-book-2 { bottom:36px; left:18px; width:155px; background:linear-gradient(90deg,#e4cba9,#f1deca); }
.ra-book-3 { bottom:59px; left:29px; width:145px; background:linear-gradient(90deg,#d8cff0,#eee8fa); }
.ra-headphones { position:absolute; left:55px; top:0; width:84px; height:88px; border:8px solid #d9cec3; border-bottom:0; border-radius:65px 65px 0 0; }
.ra-headphones:before,.ra-headphones:after { content:""; position:absolute; bottom:-22px; width:23px; height:38px; border-radius:14px; background:#eee8e2; border:4px solid #d4c9bf; }
.ra-headphones:before { left:-9px; }.ra-headphones:after { right:-9px; }
.ra-sparkle { position:absolute; color:#d8b76b; font-size:20px; opacity:.95; }
.ra-sparkle-a { left:7px; top:11px; }.ra-sparkle-b { right:0; top:45px; color:#a988dc; font-size:16px; }
.ra-wave-circle { position:relative; width:140px; height:140px; margin:8px auto 0; border-radius:50%; background:radial-gradient(circle,rgba(205,184,243,.28),rgba(245,240,253,.7) 55%,rgba(255,255,255,0) 72%); border:1px solid rgba(172,143,226,.16); }
.ra-wave-line { position:absolute; left:18px; right:18px; top:50%; height:32px; transform:translateY(-50%); background:repeating-linear-gradient(90deg,transparent 0 4px,rgba(169,141,220,.56) 4px 6px,transparent 6px 10px); border-radius:999px; }
.ra-sparkle-c { left:0; bottom:21px; font-size:14px; }.ra-sparkle-d { right:8px; top:18px; color:#9c7bd3; font-size:18px; }

.ra-contact-main { padding:0 0 62px; }
.ra-contact-card { position:relative; z-index:2; display:grid; grid-template-columns:1.02fr 1fr; gap:38px; align-items:center; margin:-25px auto 28px; padding:39px; border:1px solid rgba(134,100,194,.11); border-radius:26px; background:rgba(255,255,255,.96); box-shadow:0 18px 52px rgba(38,27,71,.09); }
.ra-contact-illustration { display:flex; justify-content:center; align-items:center; min-height:300px; padding-right:28px; border-right:1px solid rgba(177,148,229,.24); }
.ra-envelope-scene { width:320px; height:245px; max-width:100%; position:relative; }
.ra-envelope-shadow { position:absolute; left:56px; bottom:7px; width:205px; height:18px; border-radius:50%; background:rgba(104,78,156,.09); filter:blur(1px); }
.ra-envelope-back { position:absolute; left:74px; bottom:36px; width:172px; height:114px; border-radius:0 0 17px 17px; background:linear-gradient(180deg,#d6c4f4,#efe5ff); box-shadow:0 16px 29px rgba(56,38,103,.08); }
.ra-envelope-back:before,.ra-envelope-back:after { content:""; position:absolute; top:0; width:50%; height:72px; background:#cfbaef; }
.ra-envelope-back:before { left:0; clip-path:polygon(0 0,100% 100%,0 100%); }.ra-envelope-back:after { right:0; clip-path:polygon(100% 0,100% 100%,0 100%); }
.ra-envelope-letter { position:absolute; left:98px; bottom:92px; width:126px; height:90px; border-radius:12px; display:flex; align-items:center; justify-content:center; background:linear-gradient(180deg,#fffdf8,#f3ebdc); color:#9a72d5; font-size:28px; box-shadow:0 8px 18px rgba(41,27,78,.08); }
.ra-headphones-lg { position:absolute; left:59px; bottom:110px; width:198px; height:130px; border:11px solid #4d376f; border-bottom:0; border-radius:126px 126px 0 0; }
.ra-ear-left,.ra-ear-right { position:absolute; bottom:-21px; width:35px; height:72px; border-radius:22px; background:#3f2c60; box-shadow:inset 0 0 0 5px rgba(255,255,255,.07); }
.ra-ear-left { left:-10px; }.ra-ear-right { right:-10px; }
.ra-dot { position:absolute; border-radius:50%; background:#b591e5; }
.ra-dot-1 { width:7px; height:7px; left:26px; bottom:73px; }.ra-dot-2 { width:5px; height:5px; right:27px; bottom:92px; }.ra-dot-3 { width:9px; height:9px; right:46px; top:41px; background:#e2bd72; }

.ra-mini-heading { display:inline-flex; align-items:center; gap:11px; margin-bottom:9px; color:#8d69c9; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.ra-mini-icon { width:40px; height:40px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; background:linear-gradient(180deg,#efe5ff,#e7dafc); color:#744fbd; font-size:18px; }
.ra-contact-details h2 { margin:0 0 13px; color:#2b1d50; font-family:Georgia,'Times New Roman',serif; font-size:39px; line-height:1.1; }
.ra-contact-details p { margin:0 0 18px; color:#4e5362; font-size:16.5px; line-height:1.72; }
.ra-email-box { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:0 0 18px; padding:17px 18px; border:1px solid rgba(165,131,227,.19); border-radius:15px; background:linear-gradient(180deg,#f5efff,#f0e8ff); }
.ra-email-box a { color:#5b35b5; text-decoration:none; font-weight:800; font-size:clamp(15px,1.7vw,19px); word-break:break-word; }
.ra-email-box a:hover { text-decoration:underline; }
.ra-copy-email { flex:0 0 auto; border:0; background:transparent; color:#7350bd; font-size:22px; line-height:1; padding:5px 6px; cursor:pointer; border-radius:8px; transition:.16s ease; }
.ra-copy-email:hover,.ra-copy-email:focus { background:rgba(124,87,198,.10); outline:none; }
.ra-copy-email.is-copied { background:#e6f7ea; color:#27723e; }
.ra-contact-button { display:inline-flex; align-items:center; gap:9px; min-height:52px; padding:13px 25px; border-radius:999px; background:linear-gradient(135deg,#8059cd,#6f49cf); color:#fff!important; text-decoration:none; font-size:18px; font-weight:800; box-shadow:0 14px 24px rgba(111,73,207,.22); transition:transform .17s ease,box-shadow .17s ease; }
.ra-contact-button:hover,.ra-contact-button:focus { transform:translateY(-2px); box-shadow:0 18px 30px rgba(111,73,207,.28); color:#fff!important; }
.ra-small-note { margin-top:15px!important; font-size:14px!important; font-style:italic; color:#6b6677!important; }.ra-small-note span{color:#9b76d7;margin-right:5px;font-style:normal;}

.ra-contact-topics { position:relative; padding:34px 34px 31px; border:1px solid rgba(225,211,193,.77); border-radius:25px; background:linear-gradient(180deg,rgba(255,252,248,.98),rgba(252,247,240,.98)); box-shadow:0 10px 32px rgba(41,29,73,.05); overflow:hidden; }
.ra-topics-heading { display:flex; justify-content:center; align-items:center; gap:11px; margin-bottom:25px; text-align:center; }
.ra-topics-badge { width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:#f0e7ff; color:#7c57c6; font-size:17px; box-shadow:inset 0 0 0 1px rgba(124,87,198,.12); }
.ra-topics-heading h2 { margin:0; color:#2b1d50; font-family:Georgia,'Times New Roman',serif; font-size:clamp(30px,3.7vw,46px); line-height:1.08; }
.ra-topics-grid { position:relative; z-index:2; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:23px 28px; padding-right:132px; }
.ra-topic-item { display:flex; align-items:flex-start; gap:13px; }.ra-topic-icon { flex:0 0 auto; width:48px; height:48px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:linear-gradient(180deg,#eee5ff,#f6f1ff); color:#714bb8; font-size:20px; font-weight:800; }
.ra-topic-item p { margin:0; color:#3f4350; font-size:16px; line-height:1.5; font-weight:600; }
.ra-topics-books { position:absolute; right:27px; bottom:20px; width:116px; height:92px; opacity:.94; }.ra-topic-book { position:absolute; left:0; height:16px; border-radius:7px; box-shadow:0 8px 15px rgba(41,27,78,.06); }
.ra-topic-book-1{bottom:0;width:91px;background:linear-gradient(90deg,#dbccf3,#eee6fc)}.ra-topic-book-2{bottom:20px;width:108px;left:7px;background:linear-gradient(90deg,#e8d0b4,#f0dfcd)}.ra-topic-book-3{bottom:40px;width:88px;left:15px;background:linear-gradient(90deg,#6f58ac,#8e7bc2)}.ra-topic-sprig{position:absolute;right:0;top:0;color:#9f7bce;font-size:40px;transform:rotate(-18deg)}
.ra-contact-footer-note { display:flex; align-items:center; gap:16px; margin-top:18px; padding:17px 23px; border:1px solid rgba(229,220,206,.9); border-radius:21px; background:rgba(255,251,245,.96); }.ra-footer-icon{flex:0 0 auto;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#efe6ff;color:#7b57c4;font-size:21px;font-weight:800}.ra-contact-footer-note p{margin:0;color:#4c5260;font-size:15.5px;line-height:1.55;font-weight:600}

@media (max-width:1040px){.ra-contact-hero-inner{grid-template-columns:165px 1fr 165px}.ra-contact-card{grid-template-columns:1fr}.ra-contact-illustration{border-right:0;border-bottom:1px solid rgba(177,148,229,.22);padding:0 0 25px}.ra-topics-grid{padding-right:0}.ra-topics-books{position:static;margin:15px auto 0}.ra-contact-topics{padding-bottom:22px}}
@media (max-width:820px){.ra-contact-hero-inner{grid-template-columns:1fr}.ra-hero-art{display:none}.ra-topics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ra-contact-card{margin-top:-16px}}
@media (max-width:620px){.ra-contact-wrap{width:min(100% - 24px,1160px)}.ra-contact-hero{padding:41px 0 44px}.ra-contact-card{padding:24px 19px;border-radius:20px}.ra-contact-illustration{min-height:235px}.ra-envelope-scene{transform:scale(.78);transform-origin:center}.ra-contact-details h2{font-size:32px}.ra-email-box{align-items:flex-start}.ra-contact-button{width:100%;justify-content:center}.ra-contact-topics{padding:27px 20px}.ra-topics-heading{align-items:flex-start}.ra-topics-heading h2{font-size:31px}.ra-topics-grid{grid-template-columns:1fr}.ra-contact-footer-note{align-items:flex-start;padding:16px 18px}}
