/* Contact page only. Original email, reasons, FAQ copy and behavior are retained. */
.ct27 { --ct-green:#153e2c; --ct-line:#dce3d8; color:#18181b; background:#faf9f4; }
.ct27 .bc-container { width:100%; max-width:none; margin-inline:auto; padding-inline:6.4%; }
.ct27 .bc-hero--contact { height:610px; min-height:610px; padding:0; display:flex; align-items:center; isolation:isolate; background:#153d2c; }
.ct27 .bc-hero__bg { inset:0; background:url('../img/contact-woodland-dog-20260922-v2.png') center top/cover no-repeat; opacity:1; }
.ct27 .bc-hero__bg:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,34,18,.55),rgba(5,34,18,.2) 43%,transparent 70%); }
.ct27 .bc-hero__content { position:relative; z-index:1; width:100%; max-width:none; margin:auto; padding:40px 5.5%; text-align:left; }
.ct27 .bc-hero h1 { max-width:55%; margin:0 0 20px; color:#fff; font:400 clamp(42px,5vw,96px)/1.06 Inter,Arial,sans-serif; letter-spacing:-.025em; }
.ct27 .bc-hero .bc-hero__subtitle { max-width:min(42%,620px); margin:0; color:#fff; font:400 32px/1.35 Inter,Arial,sans-serif; white-space:normal; }
.ct27 .bc-fstrip { padding:20px 5.5%; background:#e8f0e4; }
.ct27 .bc-fstrip__inner { max-width:none; }
.ct27 .bc-fstrip__item { padding:2px 24px; border-right:1px solid #cbd8c6; }
.ct27 .bc-fstrip__item:last-child { border-right:0; }
.ct27 .bc-fstrip__label { margin:0 0 5px; color:#153e2c; font:700 20px/1.2 Inter,Arial,sans-serif; }
.ct27 .bc-fstrip__desc { font-size:13px; line-height:1.5; color:#18181b; }
.ct27 .bc-fstrip__item:hover { background:#dde8d7; }
.ct27 .ct27-main { padding:50px 0 0; }
.ct27 .bc-section-header--center { text-align:center; margin:0 0 34px; }
.ct27 .bc-section__title { font:700 clamp(30px,3vw,48px)/1.15 Inter,Arial,sans-serif; letter-spacing:-.025em; color:#132f22; margin:0 0 12px; }
.ct27 .bc-section__subtitle { font-size:18px; color:#18181b; line-height:1.5; margin:0; }
.ct27 .bc-contact-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; margin-bottom:50px; }
.ct27 .bc-contact-card { border:1px solid #f0f2ec; border-radius:6px; background:#fff; box-shadow:0 4px 18px rgba(23,51,31,.025); padding:38px; }
.ct27 .bc-contact-card:before { content:""; display:block; width:62px; height:62px; border-radius:50%; margin:0 0 20px; background:#e8f1e5 center/30px 30px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40' fill='none' stroke='%23173e2d' stroke-width='2.5'%3E%3Crect x='5' y='9' width='30' height='23' rx='2'/%3E%3Cpath d='m6 10 14 12 14-12'/%3E%3C/svg%3E"); }
.ct27 .bc-contact-card:nth-child(2):before { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40' fill='none' stroke='%23173e2d' stroke-width='2.5'%3E%3Cpath d='M34 19c0 8-7 13-15 13-3 0-5 0-7-1l-8 4 3-9c-2-2-3-4-3-7C4 11 11 6 19 6s15 5 15 13Z'/%3E%3C/svg%3E"); }
.ct27 .bc-contact-card__title { font:700 28px/1.25 Inter,Arial,sans-serif; color:#153e2c; margin:0 0 16px; }
.ct27 .bc-contact-card__text { color:#18181b; font-size:17px; line-height:1.7; margin:0; }
.ct27 .bc-contact-card__email { display:block; margin-top:28px; color:#1b4c32; font:700 clamp(20px,1.9vw,29px)/1.4 Inter,Arial,sans-serif; overflow-wrap:anywhere; }
.ct27 .bc-contact-card__email:hover { text-decoration:underline; }
.ct27 .bc-contact-card__list { padding-left:22px; margin:0; color:#18181b; font-size:16px; line-height:1.7; }
.ct27 .bc-contact-card__list li { padding-bottom:5px; }
.ct27 .bc-contact-card__list li::marker { color:#1a5037; }
.ct27 .bc-faq { max-width:none; padding:38px 0 50px; }
.ct27 .bc-faq .bc-section__title { font-size:40px!important; }
.ct27 .bc-faq__item { padding:0; border:1px solid #dfe6dc; border-radius:4px; margin-bottom:12px; background:#fff; overflow:hidden; }
.ct27 .bc-faq__question { padding:22px 28px; color:#183d2b; font:700 22px/1.4 Inter,Arial,sans-serif; }
.ct27 .bc-faq__question:hover,.ct27 .bc-faq__item--open .bc-faq__question { background:#edf3e8; }
.ct27 .bc-faq__toggle { font:400 26px/1 Inter,Arial,sans-serif; color:#153e2c; }
.ct27 .bc-faq__answer { padding:18px 28px 25px; color:#18181b; font-size:16px; line-height:1.7; }
.ct27 .bc-cta { background:#1b4d36 url('../img/contact-woodland-dog-20260922-v2.png') left center/200% auto no-repeat; background-blend-mode:multiply; padding:56px 0; text-align:center; }
.ct27 .bc-cta__title { color:#fff; font:700 clamp(30px,3vw,46px)/1.15 Inter,Arial,sans-serif; margin:0 0 14px; letter-spacing:-.025em; }
.ct27 .bc-cta__desc { color:#fff; max-width:none; font-size:18px; line-height:1.5; margin:0 auto 25px; }
.ct27 .bc-cta .bc-btn { padding:13px 27px; border:1px solid #dce8d6; border-radius:4px; color:#173e2d; background:#f4f8ef; box-shadow:none; font-size:16px; }
.ct27 .bc-cta .bc-btn:hover { background:#fff; transform:none; }
.ct27 :is(a,button):focus-visible { outline:3px solid #7f9b75; outline-offset:3px; }
@media(max-width:1100px) {
 .ct27 .bc-hero--contact { height:565px; min-height:565px; }
 .ct27 .bc-hero .bc-hero__subtitle { font-size:24px; }
 .ct27 .bc-contact-card { padding:28px; }
 .ct27 .bc-contact-card__title { font-size:25px; }
 .ct27 .bc-fstrip__item { padding-inline:16px; }
 .ct27 .bc-fstrip__label { font-size:18px; }
}
@media(max-width:800px) {
 .ct27 .bc-hero--contact { height:auto; min-height:0; flex-direction:column; }
 .ct27 .bc-hero__content { order:1; padding:44px 28px 22px; }
 .ct27 .bc-hero h1,.ct27 .bc-hero .bc-hero__subtitle { max-width:none; }
 .ct27 .bc-hero h1 { font-size:48px; }
 .ct27 .bc-hero .bc-hero__subtitle { font-size:23px; }
 .ct27 .bc-hero__bg { order:2; position:relative; inset:auto; width:100%; height:360px; flex:none; background-position:75% top; }
 .ct27 .bc-hero__bg:after { background:linear-gradient(180deg,#153d2c,transparent 25%); }
 .ct27 .bc-container { padding-inline:24px; }
 .ct27 .bc-fstrip__inner { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 0; }
 .ct27 .bc-fstrip__item:nth-child(2) { border-right:0; }
 .ct27 .ct27-main { padding-top:34px; }
 .ct27 .bc-contact-grid { grid-template-columns:1fr; gap:20px; margin-bottom:24px; }
 .ct27 .bc-contact-card__email { font-size:27px; }
 .ct27 .bc-faq { padding:28px 0 36px; }
 .ct27 .bc-faq .bc-section__title { font-size:33px!important; }
 .ct27 .bc-faq__question { padding:18px 20px; font-size:20px; }
 .ct27 .bc-faq__answer { padding:14px 20px 22px; }
 .ct27 .bc-cta { padding:42px 0; }
}
@media(max-width:480px) {
 .ct27 .bc-container { padding-inline:18px; }
 .ct27 .bc-hero__content { padding:38px 22px 18px; }
 .ct27 .bc-hero h1 { font-size:42px; }
 .ct27 .bc-hero__bg { height:300px; }
 .ct27 .bc-fstrip__inner { grid-template-columns:1fr; gap:16px; }
 .ct27 .bc-fstrip__item { border-right:0; }
 .ct27 .bc-contact-card { padding:25px; }
 .ct27 .bc-contact-card__email { font-size:20px; }
 .ct27 .bc-section-header--center { margin-bottom:26px; }
 .ct27 .bc-faq__question { font-size:19px; }
}
