.complutum-main--contact-template { color:#696077; background:#fff; }
.complutum-main--contact-template .complutum-shell { width:calc(100% - 40px); max-width:1200px; margin-inline:auto; }
.complutum-main--contact-template .contact-hero { position:relative; isolation:isolate; display:flex; align-items:center; min-height:360px; padding:70px 0 50px; box-sizing:border-box; overflow:hidden; text-align:center; }
.contact-hero .complutum-mts-hero__media { position:absolute; inset:0; z-index:-2; }
.contact-hero .complutum-mts-hero__media img { width:100%; height:100%; object-fit:cover; }
.complutum-main--contact-template .contact-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:rgba(255,255,255,.56); backdrop-filter:blur(2px); }
.contact-hero h1 { font-family:Montserrat,sans-serif; font-size:38px; font-weight:400; line-height:1.12; letter-spacing:0; margin:0 0 20px; color:#5d536d; }
.contact-hero p { font-size:17px; line-height:1.6; max-width:38rem; margin:0 auto; }
.complutum-main--contact-template .contact-conversation { padding:56px 0; background:linear-gradient(#fff,#f5f7ef 75%,#fff); }
.contact-conversation__layout { display:grid; gap:36px; }
.contact-conversation__copy .complutum-home-section-head { max-width:none; }
.contact-conversation__copy h2 { max-width:21ch; }
.contact-conversation__copy .complutum-home-section__lede { max-width:none; }
.contact-conversation__copy .complutum-home-contact__actions { margin-top:32px; gap:0; }
.contact-conversation__copy .complutum-home-contact__action { padding:20px 0; border:0; border-top:1px solid #d7dec8; border-radius:0; box-shadow:none; background:transparent; min-width:0; text-decoration:none; }
.contact-conversation__copy .complutum-home-contact__action-icon { flex:0 0 40px; width:40px; height:40px; color:#61782f; background:transparent; box-shadow:none; }
.contact-conversation__copy .complutum-home-contact__action strong { color:#61782f; }
.contact-conversation__copy .complutum-home-contact__action span span { overflow-wrap:anywhere; color:#696077; }
.contact-conversation__form { min-width:0; align-self:start; padding:24px 20px; border:1px solid #e0e4d8; border-radius:8px; background:rgba(255,255,255,.9); }
.contact-conversation__form .complutum-form { margin:0; padding:0; border:0; border-radius:0; background:none; box-shadow:none; }
.contact-conversation__form .complutum-form__stack { gap:16px; }
.contact-conversation__form input:not([type=checkbox]):not([type=hidden]), .contact-conversation__form textarea { width:100%; box-sizing:border-box; border:1px solid #d9ded1; border-radius:4px; background:#fff; color:#5d536d; font:inherit; font-size:16px; padding:14px; }
.contact-conversation__form textarea { min-height:145px; resize:vertical; }
.contact-conversation__form .complutum-form__consent { margin:20px 0; font-size:13px; line-height:1.6; }
.contact-conversation__form .wp-element-button { width:100%; min-height:48px; border:0; border-radius:4px; background:#61782f; color:#fff; box-shadow:none; }
.contact-conversation__form .wp-element-button:hover { background:#506426; }
.complutum-main--contact-template :is(a,button,input,textarea):focus-visible { outline:2px solid #61782f; outline-offset:4px; }
.contact-location { margin:0; padding:0; background:#eef1e9; }
.contact-location iframe { display:block; width:100%; height:320px; border:0; }
.complutum-main--contact-template .contact-social { padding:64px 0 90px; background:linear-gradient(#fff,#f3f5ec 45%,#fff); }
.contact-social .complutum-home-section-head { max-width:760px; }
.contact-social__links { display:flex; flex-direction:column; margin-top:32px; }
.contact-social__links a { display:flex; align-items:center; gap:16px; padding:22px 0; border-top:1px solid #d5ddc2; color:#5d536d; text-decoration:none; font-size:20px; transition:color 200ms ease; }
.contact-social__links a:hover { color:#61782f; }
.contact-social__icon { display:grid; place-items:center; flex:0 0 64px; width:64px; height:64px; border-radius:50%; color:var(--social-ink,#61782f); background:var(--social-surface,#eef3e4); border:1px solid #ffffff; box-shadow:0 7px 18px #5d536d14,inset 0 2px 0 #ffffff; }
.contact-social__icon svg { width:32px; height:32px; }
.contact-social__link--facebook { --social-ink:#536f99; --social-surface:#edf1f6; }
.contact-social__link--instagram { --social-ink:#966479; --social-surface:#f6eef1; }
.contact-social__link--linkedin { --social-ink:#427c86; --social-surface:#edf4f2; }
.contact-social__link--youtube { --social-ink:#a25f61; --social-surface:#f7eeee; }
@media(prefers-reduced-motion:no-preference) {
 .contact-social__icon { transition:transform 220ms ease,box-shadow 220ms ease; }
 .contact-social__links a:hover .contact-social__icon,.contact-social__links a:focus-visible .contact-social__icon { transform:translateY(-4px); box-shadow:0 12px 24px #5d536d22,inset 0 2px 0 #fff; }
 .contact-social__links a:active .contact-social__icon { transform:scale(.9); box-shadow:0 2px 6px #5d536d18,inset 0 2px 5px #5d536d18; }
}
@media(min-width:768px) {
 .complutum-main--contact-template .contact-hero { min-height:400px; }
 .contact-hero h1 { font-size:48px; }
 .complutum-main--contact-template .contact-conversation { padding:72px 0; }
 .contact-conversation__form { padding:32px; }
 .contact-social__links { flex-direction:row; gap:32px; flex-wrap:wrap; }
 .contact-social__links a { flex:1 1 220px; }
 .contact-location iframe { height:380px; }
}
@media(min-width:1100px) {
 .complutum-main--contact-template .contact-hero { min-height:420px; }
 .contact-hero h1 { font-size:56px; }
 .contact-conversation__layout { grid-template-columns:42% 48%; gap:10%; align-items:start; }
 .contact-conversation__form { margin-top:12px; }
 .complutum-main--contact-template .contact-social { padding:80px 0 100px; }
}
