:root {--quote-color:#aa1111;--question-color:#aa1111;--sub-shadow:#fbc638;--blog-detail-h1:#0000ff;--blog-detail-h2:#800080;--blog-detail-h3:#a52a2a;--blog-detail-h4:#995f6a;--blog-detail-h5:#ff0000;--blog-detail-h6:#5e5e5e;}.page-header{background-color:#f4f4f4;border-bottom:5px solid #ccc;border-top:2px solid #e4e4e4;min-height:50px;padding:10px 0;text-align:left}.page-header .breadcrumb{background-color:transparent;margin-bottom:0;padding:0;flex-wrap:nowrap}.page-header .breadcrumb-item a{text-decoration:none;color:#343434}.page-header .breadcrumb-item.active{color:var(--site-color);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;flex:1}@media (max-width:992px){.page-header{padding:8px 0;min-height:40px}}@media (max-width:768px){.page-header{padding:6px 0;min-height:30px}}@media (max-width:576px){.page-header .breadcrumb-item{font-size:13px}}a{text-decoration:none;color:#090909}ul{padding:0;margin:0;list-style-type:none}.text-color-2{color:var(--site-color)}.widget-title{font-size:18px;color:var(--site-color);font-weight:600;position:relative}.block-card{background-color:#fff;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;-webkit-box-shadow:0 0 40px rgb(82 85 90 / 10%);-moz-box-shadow:0 0 40px rgba(82,85,90,.1);box-shadow:0 0 40px rgb(82 85 90 / 10%);border:1px solid rgba(128,137,150,.1);border-top:3px solid var(--site-color);padding:30px;height:100%}.block-card-header{border-bottom:1px solid rgba(128,137,150,.1);padding-bottom:20px}.block-card-header p{font-size:13px;line-height:24px;color:#5b5c5e}.block-card-body{padding-top:20px}.block-card-body img{width: 100%;max-width: 100%;height: 400px;}.label-text{font-size:14px;color:var(--lit-color);font-weight:600;text-transform:capitalize;position:relative;margin-bottom:5px}.form-box .form-group{position:relative;margin-bottom:1rem}.form-box .form-control{height:auto;line-height:inherit;padding:12px 20px 12px 40px;font-size:15px;color:#333f57;border:1px solid rgba(128,137,150,.3);font-weight:500;-webkit-transition:all .3s;-moz-transition:all .3s;-ms-transition:all .3s;-o-transition:all .3s;transition:all .3s}.form-box .message-control{height:300px}.form-box .form-control-styled{border-left:5px solid var(--site-color);border-top:0;border-right:0;border-bottom:0;-webkit-box-shadow:0 4px 40px rgb(0 0 0 / 12%);-moz-box-shadow:0 4px 40px rgba(0,0,0,.12);box-shadow:0 4px 40px rgb(0 0 0 / 12%)}.form-box .form-group .form-icon{position:absolute;top:13px;left:15px;color:var(--site-color);font-size:20px}.btn-box p{color:#5b5c5e}.btn-box button{float:right}.theme-btn{font-weight:600;font-size:16px;color:#333f57;line-height:48px;padding-left:24px;padding-right:24px;background-color:#f5f7fc;text-align:center;position:relative;display:inline-block;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-transition:all .3s;-moz-transition:all .3s;-ms-transition:all .3s;-o-transition:all .3s;transition:all .3s;z-index:1}.theme-btn:hover{color:#fff; opacity:0.9;}.gradient-btn{background:var(--contact-button-color);position:relative;color:#fff;-webkit-box-shadow:0 5px 25px rgb(123 104 238 / 30%);-moz-box-shadow:0 5px 25px rgba(123,104,238,.3);box-shadow:0 5px 25px rgb(123 104 238 / 30%)}.gradient-btn:hover::before{opacity:1;visibility:visible}.gradient-btn::before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;opacity:0;visibility:hidden;pointer-events:none;opacity:0.8;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-transition:all .4s;-moz-transition:all .4s;-ms-transition:all .4s;-o-transition:all .4s;transition:all .4s;z-index:-1}.font-size-12{font-size:12px!important}.font-size-14{font-size:14px!important}.font-size-16{font-size:16px!important}.font-size-18{font-size:18px!important}.list-items li{margin-bottom:7px;font-weight:500;color:#5b5c5e;font-size:16px;display:flex}.list-items-style-2 li{margin-bottom:0}.list-items-style-2 li+li{border-top:1px solid rgba(128,137,150,.1);padding-top:15px;margin-top:15px}.list-items li a{color:#5b5c5e;-webkit-transition:all .3s;-moz-transition:all .3s;-ms-transition:all .3s;-o-transition:all .3s;transition:all .3s;position:relative;display:inline-block}.list-items li a:hover{color:var(--site-color)}.list--items li span:first-child{width:81px;display:inline-block;color:var(--site-color)}.list--items li span.second-txt{padding-left:10px}#iframe-container iframe{width:100%!important;height:400px!important}@media only screen and (max-width:1200px){.list-items li{font-size:14px}.form-box .form-control{font-size:15px;padding:12px 20px 12px 34px}.form-box .form-group .form-icon{font-size:15px;top:12px}.theme-btn{font-size:14px;line-height:40px}}@media only screen and (max-width:375px){.label-text{font-size:12px}.font-size-12{font-size:11px!important}.form-box .form-control{font-size:12px}.form-box .form-group .form-icon{font-size:15px}.theme-btn{font-size:14px;line-height:42px;padding-left:18px;padding-right:18px}.font-size-14{font-size:12px!important}.list--items li span{width:115px}.list-items li{font-size:13px}}
.ctn-detail h1 {display: block;font-size: 30px;margin: 0;color: var(--blog-detail-h1);font-weight:700;margin:1rem 0;}
.ctn-detail p {font-size: 20px;font-weight: 400;line-height: 1.8;margin: 10px 0;margin-bottom: 20px;
text-align: justify;}
.ctn-detail h2 {color: var(--blog-detail-h2);font-size: 1.5rem;}
.ctn-detail h3 {color: var(--blog-detail-h3);font-weight: 600;font-size: 1.4rem;margin-top: 1.4rem;}
.ctn-detail h4 {color: var(--blog-detail-h4);font-size: 1.25rem;}
.ctn-detail h5 {color: var(--blog-detail-h5);font-size: 1.25rem;}
.ctn-detail h6 {color: var(--blog-detail-h6);font-size: 1.25rem;}
.ctn-detail p a {color: var(--link-color);text-decoration: underline;transition: all .3s ease-in-out;}
.ctn-detail p a:hover {color: var(--site-color);}
.ctn-detail ul li {font-size: 18px;font-weight: 500;line-height: 30px;letter-spacing: .08em;color: #000;list-style: none;display: block;padding-left: 30px;position: relative;margin-left: 0;}
.ctn-detail > ul > li::before {content: "\2713";font-weight: 900;color: var(--site-color);border-radius: 50%;margin-right: 10px;width: 25px;height: 25px;line-height: 26px;text-align: center;position: absolute;top: 3px;left: 0;}
.ctn-detail > ul > li:hover::before {background: var(--site-color);color: #fff;}
.block-card-body img{height:400px; width:300px; aspect-ratio:3/4;max-width:300px;}
@media(max-width:1218px){
    .block-card-body img{max-width:100%;}
}
.g-map, iframe{width:100% !important;height:400px !important;}
@media(max-width:550px){
 .g-map, iframe{width:100% !important;height:250px !important;}
}

/* Quick contact cards */
.quick-contact{margin-top:10px;margin-bottom:10px}
.quick-contact-card{--qc:var(--site-color);position:relative;display:flex;flex-direction:column;height:100%;padding:28px 24px 22px;background:linear-gradient(160deg,#fff 0%,color-mix(in srgb,var(--qc) 6%,#fff) 100%);border:1px solid color-mix(in srgb,var(--qc) 14%,transparent);border-radius:16px;box-shadow:0 10px 30px rgba(40,44,52,.07);overflow:hidden;isolation:isolate;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s}
.quick-contact-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(145deg,var(--qc),color-mix(in srgb,var(--qc) 60%,#000));opacity:0;transition:opacity .4s}
.quick-contact-bg{position:absolute;right:-18px;bottom:-18px;z-index:-1;color:var(--qc);opacity:.07;transform:rotate(-12deg);transition:transform .5s,opacity .4s,color .4s}
.quick-contact-bg svg{width:130px;height:130px;stroke-width:1.2}
.quick-contact-icon{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;width:58px;height:58px;margin-bottom:18px;border-radius:16px;background:linear-gradient(145deg,var(--qc),color-mix(in srgb,var(--qc) 65%,#000));color:#fff;box-shadow:0 8px 18px color-mix(in srgb,var(--qc) 35%,transparent);transition:transform .4s,background .3s,color .3s,box-shadow .3s}
.quick-contact-icon svg{display:block;transition:transform .4s}
.quick-contact-title{margin:0 0 2px;font-size:19px;font-weight:700;color:#1f2430;transition:color .3s}
.quick-contact-sub{margin:0 0 14px;font-size:13px;color:#8a8d91;transition:color .3s}
.quick-contact-items{flex:1;margin-bottom:18px;padding-top:14px;border-top:1px dashed color-mix(in srgb,var(--qc) 25%,transparent);transition:border-color .3s}
.quick-contact-items div{position:relative;padding-left:16px;font-size:15px;font-weight:500;line-height:1.7;color:#4a4d52;word-break:break-word;transition:color .3s}
.quick-contact-items div::before{content:"";position:absolute;left:0;top:.7em;width:7px;height:7px;border-radius:50%;background:var(--qc);transition:background .3s}
.quick-contact-items a,.quick-contact-items span{color:inherit}
.quick-contact-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;border-radius:10px;font-size:14px;font-weight:600;color:var(--qc);background:color-mix(in srgb,var(--qc) 9%,transparent);transition:background .3s,color .3s}
.quick-contact-cta svg{transition:transform .3s}
.quick-contact-card:hover{transform:translateY(-8px);border-color:transparent;box-shadow:0 22px 44px color-mix(in srgb,var(--qc) 32%,transparent)}
.quick-contact-card:hover::before{opacity:1}
.quick-contact-card:hover .quick-contact-bg{color:#fff;opacity:.14;transform:rotate(0) scale(1.15)}
.quick-contact-card:hover .quick-contact-icon{background:#fff;color:var(--qc);transform:rotate(-6deg) scale(1.05);box-shadow:0 10px 22px rgba(0,0,0,.2)}
.quick-contact-card:hover .quick-contact-title,.quick-contact-card:hover .quick-contact-items div{color:#fff}
.quick-contact-card:hover .quick-contact-sub{color:rgba(255,255,255,.75)}
.quick-contact-card:hover .quick-contact-items{border-color:rgba(255,255,255,.35)}
.quick-contact-card:hover .quick-contact-items div::before{background:#fff}
.quick-contact-card:hover .quick-contact-cta{background:#fff;color:var(--qc)}
.quick-contact-card:hover .quick-contact-cta svg{transform:translateX(5px)}
@media(prefers-reduced-motion:reduce){.quick-contact-card,.quick-contact-card *{transition:none!important}}
.ctn-detail + .quick-contact{margin-top:10px}

/* Quick contact: smooth hover */
.quick-contact-card{--qc-t:.55s cubic-bezier(.22,.61,.36,1);will-change:transform;transition:transform var(--qc-t),box-shadow var(--qc-t),border-color var(--qc-t)}
.quick-contact-card::before{transition:opacity var(--qc-t)}
.quick-contact-bg{transition:transform .8s cubic-bezier(.22,.61,.36,1),opacity var(--qc-t),color var(--qc-t)}
.quick-contact-icon{position:relative;isolation:isolate;background:#fff;color:#fff;transition:transform var(--qc-t),color var(--qc-t),box-shadow var(--qc-t)}
.quick-contact-icon::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:linear-gradient(145deg,var(--qc),color-mix(in srgb,var(--qc) 65%,#000));transition:opacity var(--qc-t)}
.quick-contact-icon svg{transition:transform var(--qc-t)}
.quick-contact-title,.quick-contact-sub,.quick-contact-items,.quick-contact-items div,.quick-contact-items div::before,.quick-contact-cta{transition-duration:.55s;transition-timing-function:cubic-bezier(.22,.61,.36,1)}
.quick-contact-cta svg{transition:transform .45s cubic-bezier(.22,.61,.36,1)}
.quick-contact-card:hover .quick-contact-icon{background:#fff;color:var(--qc)}
.quick-contact-card:hover .quick-contact-icon::before{opacity:0}
.quick-contact-card:hover{transform:translateY(-6px)}

/* Contact sidebar */
.contact-side .block-card-header{padding-bottom:16px}
.contact-side .block-card-header .widget-title{margin:0 0 4px;font-size:20px}
.contact-side .block-card-header p{margin:0}
.contact-side .block-card-body{padding-top:20px}
.block-card-body .contact-side-cover{position:relative;margin-bottom:20px;border-radius:14px;overflow:hidden;box-shadow:0 10px 26px rgba(40,44,52,.16)}
.block-card-body .contact-side-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.28))}
.block-card-body .contact-side-cover img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.contact-side-cover:hover img{transform:scale(1.06)}
.contact-side-list{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}
.contact-side-item{display:flex;align-items:flex-start;gap:14px;padding:14px;background:#f7f8fb;border:1px solid rgba(128,137,150,.14);border-radius:12px;transition:transform .4s cubic-bezier(.22,.61,.36,1),box-shadow .4s,background .4s,border-color .4s}
.contact-side-item:hover{transform:translateX(4px);background:#fff;border-color:color-mix(in srgb,var(--site-color) 35%,transparent);box-shadow:0 8px 22px rgba(40,44,52,.1)}
.contact-side-icon{flex:0 0 44px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:var(--site-color);color:#fff;box-shadow:0 6px 14px color-mix(in srgb,var(--site-color) 30%,transparent);transition:transform .4s}
.contact-side-item:hover .contact-side-icon{transform:rotate(-6deg) scale(1.06)}
.contact-side-text{min-width:0;flex:1}
.contact-side-label{display:block;margin-bottom:2px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8a8d91}
.contact-side-value,.contact-side-value a,.contact-side-value span{font-size:15px;font-weight:600;line-height:1.5;color:#2b2f38;overflow-wrap:anywhere;transition:color .3s}
.contact-side-value a:hover{color:var(--site-color)}
.contact-side-social{margin-top:22px;padding-top:18px;border-top:1px dashed rgba(128,137,150,.3);text-align:center}
.contact-side-follow{display:block;margin-bottom:8px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#8a8d91}
.contact-side .social-links{padding:0!important}
.contact-side .social-profile{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0;padding:0}
.contact-side .social-profile li{margin:0;padding:0}
.contact-side .social-profile li a{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;font-size:18px;border-radius:50%;border:1px solid rgba(128,137,150,.25);box-shadow:0 4px 12px rgba(40,44,52,.08);transition:transform .35s cubic-bezier(.22,.61,.36,1),background .3s,color .3s,box-shadow .3s}
.contact-side .social-profile li a:not(:hover){background:#fff}
.contact-side .social-profile li a:hover{transform:translateY(-4px);box-shadow:0 10px 20px rgba(40,44,52,.18)}
.quick-contact-items a,.quick-contact-items span{overflow-wrap:anywhere}

/* Contact page: mobile */
@media only screen and (max-width:575.98px){
    .container.my-5{margin-top:1.5rem!important;margin-bottom:1.5rem!important}
    .block-card{padding:18px 16px}
    .block-card-body{padding-top:14px}
    .ctn-detail h2{font-size:1.3rem;margin-top:.5rem}
    .ctn-detail p{font-size:16px;line-height:1.7;text-align:left;margin-bottom:14px}
    .quick-contact{--bs-gutter-y:.75rem}
    .quick-contact-card{display:grid;grid-template-columns:52px 1fr;column-gap:14px;align-items:center;padding:16px}
    .quick-contact-icon{grid-row:1/3;width:52px;height:52px;margin:0;border-radius:14px}
    .quick-contact-title{grid-column:2;margin:0;font-size:17px;align-self:end}
    .quick-contact-sub{grid-column:2;margin:0;font-size:12px;align-self:start}
    .quick-contact-items,.quick-contact-cta{grid-column:1/-1}
    .quick-contact-items{margin:12px 0;padding-top:10px}
    .quick-contact-items div{font-size:14px}
    .quick-contact-bg svg{width:90px;height:90px}
    .contact-side-item{padding:12px;gap:12px}
    .contact-side-value,.contact-side-value a,.contact-side-value span{font-size:14px}
    .block-card-body .contact-side-cover img{aspect-ratio:16/10}
}

/* Contact sidebar: stretch + mobile polish */
@media only screen and (min-width:992px){
    .contact-side{display:flex;flex-direction:column}
    .contact-side .block-card-body{flex:1;display:flex;flex-direction:column}
    .contact-side-social{margin-top:auto}
}
@media only screen and (max-width:575.98px){
    .quick-contact-bg{display:none}
    .follow-links .ribbon{width:92%;margin-left:auto;margin-right:auto;font-size:15px;line-height:1.3;letter-spacing:.05em;padding:.5em .8em}
}

/* Contact: single column layout */
.contact-cover{position:relative;margin-bottom:26px;border-radius:16px;overflow:hidden;box-shadow:0 14px 34px rgba(40,44,52,.16);isolation:isolate}
.contact-cover::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.3))}
.contact-cover img{display:block;width:100%;max-width:100%;height:300px;object-fit:cover;object-position:center 22%;transition:transform .9s cubic-bezier(.22,.61,.36,1)}
.contact-cover:hover img{transform:scale(1.05)}
.contact-social{margin-top:30px;padding-top:22px;border-top:1px dashed rgba(128,137,150,.3);text-align:center}
.contact-social-title{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:12px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8a8d91}
.contact-social-title::before,.contact-social-title::after{content:"";flex:0 1 70px;height:1px;background:rgba(128,137,150,.3)}
.contact-social .social-links{padding:0!important}
.contact-social .social-profile{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:0;padding:0}
.contact-social .social-profile li{margin:0;padding:0}
.contact-social .social-profile li a{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;font-size:19px;border-radius:50%;border:1px solid rgba(128,137,150,.25);box-shadow:0 4px 12px rgba(40,44,52,.08);transition:transform .35s cubic-bezier(.22,.61,.36,1),background .3s,color .3s,box-shadow .3s}
.contact-social .social-profile li a:not(:hover){background:#fff}
.contact-social .social-profile li a:hover{transform:translateY(-4px);box-shadow:0 10px 20px rgba(40,44,52,.18)}
@media only screen and (max-width:991.98px){.contact-cover img{height:240px}}
@media only screen and (max-width:575.98px){
    .contact-cover{margin-bottom:18px;border-radius:12px}
    .contact-cover img{height:190px}
    .contact-social{margin-top:22px;padding-top:16px}
    .contact-social .social-profile{gap:10px}
    .contact-social .social-profile li a{width:42px;height:42px;font-size:18px}
}
.row>.col-lg-10.mx-auto{margin-left:auto;margin-right:auto}

/* Contact: user photo, text wraps around it */
.contact-main{display:flow-root}
.contact-cover{width:100%;max-width:240px;margin:0 0 22px;border-radius:18px;box-shadow:0 12px 30px rgba(40,44,52,.18);border:4px solid #fff;outline:1px solid rgba(128,137,150,.2)}
.contact-cover::after{background:linear-gradient(180deg,transparent 65%,rgba(0,0,0,.18))}
.contact-cover img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center top}
.contact-cover.is-float{float:left;width:240px;margin:0 28px 14px 0}
.contact-main .ctn-detail{padding-top:4px!important}
.contact-main .ctn-detail p{text-align:left}
.contact-main .quick-contact,.contact-main .contact-social{clear:both}
@media only screen and (max-width:991.98px){
    .contact-cover.is-float{width:190px;margin-right:22px}
    .contact-cover img{height:auto}
}
@media only screen and (max-width:575.98px){
    .contact-cover,.contact-cover.is-float{width:120px;max-width:120px;margin:0 14px 8px 0;border-radius:14px;border-width:3px}
    .contact-cover:not(.is-float){float:none;margin:0 0 16px}
    .contact-cover img{height:auto}
    .contact-main .ctn-detail h2{margin-top:0}
}

/* Contact form beside user photo: first fields next to the image, the rest full width */
@media only screen and (min-width:576px){
    .contact-main.has-form-cover{display:grid;grid-template-columns:240px minmax(0,1fr);column-gap:28px;align-items:start}
    .contact-main.has-form-cover .block-card-body,
    .contact-main.has-form-cover .form-box{display:contents}
    .contact-main.has-form-cover .form-box>*{width:100%;max-width:100%;padding:0;margin:0}
    .contact-main.has-form-cover .cf-notice{grid-column:1/-1;grid-row:1}
    .contact-main.has-form-cover .contact-cover{grid-column:1;grid-row:2/span 4;margin:0}
    .contact-main.has-form-cover .block-card-header{grid-column:2;grid-row:2;border-bottom:0;padding-bottom:6px}
    .contact-main.has-form-cover .cf-top{grid-column:2}
    .contact-main.has-form-cover .form-box>:not(.cf-top):not(.cf-notice){grid-column:1/-1}
    .contact-main.has-form-cover .form-box>:not(.cf-top){margin-top:4px}
    .contact-main.has-form-cover .form-box>:not(.cf-top):not(.cf-notice) .btn-box,
    .contact-main.has-form-cover .form-box>.col-lg-6:last-child{text-align:right}
}
@media only screen and (min-width:576px) and (max-width:991.98px){
    .contact-main.has-form-cover{grid-template-columns:170px minmax(0,1fr);column-gap:20px}
}
@media only screen and (min-width:576px){
    .contact-main.has-form-cover .cf-top{grid-row:3}
    .contact-main.has-form-cover .cf-top+.cf-top{grid-row:4}
    .contact-main.has-form-cover .cf-top+.cf-top+.cf-top{grid-row:5}
}
@media only screen and (min-width:576px){
    .contact-main.has-form-cover .cf-notice{order:-1;grid-row:auto}
    .contact-main.has-form-cover .contact-cover{grid-row:span 4}
    .contact-main.has-form-cover .block-card-header,
    .contact-main.has-form-cover .cf-top,
    .contact-main.has-form-cover .cf-top+.cf-top,
    .contact-main.has-form-cover .cf-top+.cf-top+.cf-top{grid-row:auto}
}

/* Message textarea: same style as the other fields */
.form-box .message-control{height:260px;min-height:140px;resize:vertical;font-family:inherit;line-height:1.6;border-left:5px solid var(--site-color);border-top:0;border-right:0;border-bottom:0;border-radius:0 6px 6px 0;background:#fff;box-shadow:0 4px 40px rgb(0 0 0 / 12%)}
.form-box .message-control::placeholder{font-family:inherit;color:#6c757d;opacity:1}
.form-box .message-control:focus{outline:0;border-left-color:var(--site-color);box-shadow:0 6px 40px rgb(0 0 0 / 18%)}
@media only screen and (max-width:575.98px){.form-box .message-control{height:180px}}

/* Mobile: hide the photo when the form is on */
@media only screen and (max-width:575.98px){
    .contact-main.has-form-cover .contact-cover{display:none}
}
.contact-main .quick-contact{margin-top:0;margin-bottom:26px}
.contact-main .quick-contact + .contact-cover.is-float,.contact-main .quick-contact + .ctn-detail{margin-top:0}
.contact-main .ctn-detail h2:first-child{margin-top:0}

/* Smaller user photo */
.contact-cover{max-width:180px}
.contact-cover.is-float{width:180px;margin:0 24px 12px 0}
@media only screen and (min-width:576px){
    .contact-main.has-form-cover{grid-template-columns:180px minmax(0,1fr);column-gap:24px}
}
@media only screen and (min-width:576px) and (max-width:991.98px){
    .contact-main.has-form-cover{grid-template-columns:140px minmax(0,1fr);column-gap:18px}
}
@media only screen and (max-width:991.98px){
    .contact-cover.is-float{width:140px;margin-right:18px}
}
@media only screen and (max-width:575.98px){
    .contact-cover,.contact-cover.is-float{width:96px;max-width:96px;margin:0 12px 6px 0;border-radius:12px}
}

/* Quick contact cards below the form */
.contact-main .quick-contact-after{margin-top:0;margin-bottom:0}
.contact-main.has-form-cover .quick-contact-after{grid-column:1/-1}

/* Contact page polish */
.contact-main{background:radial-gradient(520px 240px at 100% 0,color-mix(in srgb,var(--site-color) 8%,transparent),transparent 70%),radial-gradient(420px 220px at 0 100%,color-mix(in srgb,var(--site-color) 5%,transparent),transparent 70%),#fff;border-radius:16px;box-shadow:0 20px 60px rgba(40,44,52,.1)}
.quick-contact-card.qc-email{--qc:#3b6df2}
.quick-contact-card.qc-phone{--qc:#12a15c}
.quick-contact-card.qc-address{--qc:#f0802a}
@keyframes qc-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.quick-contact>div{animation:qc-rise .7s cubic-bezier(.22,.61,.36,1) both}
.quick-contact>div:nth-child(2){animation-delay:.12s}
.quick-contact>div:nth-child(3){animation-delay:.24s}
.contact-cover.is-float{position:relative;overflow:visible;border:0;outline:0;box-shadow:none;border-radius:20px}
.contact-cover.is-float::before{content:"";position:absolute;inset:-8px;z-index:-1;border-radius:26px;background:linear-gradient(145deg,var(--site-color),color-mix(in srgb,var(--site-color) 30%,#fff));opacity:.9;transform:rotate(-4deg);transition:transform .5s cubic-bezier(.22,.61,.36,1)}
.contact-cover.is-float:hover::before{transform:rotate(3deg) scale(1.03)}
.contact-cover.is-float img{border-radius:18px;border:4px solid #fff;box-shadow:0 14px 30px rgba(40,44,52,.22)}
.contact-cover.is-float::after{display:none}
.contact-main .ctn-detail h2{position:relative;padding-bottom:12px;margin-bottom:12px;font-size:1.7rem;font-weight:800;letter-spacing:-.01em}
.contact-main .ctn-detail h2::after{content:"";position:absolute;left:0;bottom:0;width:56px;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--site-color),color-mix(in srgb,var(--site-color) 25%,#fff))}
.contact-main .ctn-detail p{color:#4a4d57}
.contact-main .ctn-detail p:first-of-type{font-size:18px}
.quick-contact-card{border-radius:18px}
.quick-contact-cta{font-weight:700}
.contact-social{position:relative}
@media (prefers-reduced-motion:reduce){.quick-contact>div{animation:none}}
@media only screen and (max-width:575.98px){
    .contact-main .ctn-detail h2{font-size:1.25rem;padding-bottom:10px}
    .contact-main .ctn-detail p:first-of-type{font-size:16px}
    .contact-cover.is-float::before{inset:-5px;border-radius:18px}
}
.contact-main .ctn-detail h2{display:flow-root}
.contact-cover.is-float::before{background:linear-gradient(145deg,color-mix(in srgb,var(--site-color) 26%,#fff),color-mix(in srgb,var(--site-color) 8%,#fff));opacity:1;box-shadow:0 10px 24px rgba(40,44,52,.1)}

/* Separator below quick cards */
.contact-divider{clear:both;display:flex;align-items:center;gap:16px;margin:30px 0 28px}
.contact-divider::before,.contact-divider::after{content:"";flex:1;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--site-color) 35%,transparent))}
.contact-divider::after{background:linear-gradient(270deg,transparent,color-mix(in srgb,var(--site-color) 35%,transparent))}
.contact-divider-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;color:var(--site-color);background:#fff;border:1px solid color-mix(in srgb,var(--site-color) 25%,transparent);box-shadow:0 0 0 6px color-mix(in srgb,var(--site-color) 7%,transparent),0 8px 18px rgba(40,44,52,.1);position:relative}
.contact-divider-icon::before,.contact-divider-icon::after{content:"";position:absolute;top:50%;width:6px;height:6px;border-radius:50%;background:var(--site-color);opacity:.5;transform:translateY(-50%)}
.contact-divider-icon::before{left:-22px}
.contact-divider-icon::after{right:-22px}
@media only screen and (max-width:575.98px){.contact-divider{margin:22px 0 20px;gap:12px}.contact-divider-icon{width:40px;height:40px}}
