@charset "UTF-8";
/* /contact/ consultation page (page-contact.php). Scoped under .ct. */
.ct{--ct-ink:#061a3a;--ct-text:#2d3c50;--ct-blue:#0a5cc7;--ct-deep:#0a4a9e;--ct-line:#dfe7f0;overflow-x:clip}
.ct .wrap{width:min(1200px,calc(100% - 80px));margin-inline:auto}

/* Top: intro + form */
.ct-top{padding-block:clamp(28px,4vw,56px) clamp(56px,7vw,96px);background:linear-gradient(180deg,#eef6ff 0%,#f7faff 60%,#fff 100%)}
.ct-top-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"head form" "offer form";column-gap:clamp(28px,5vw,72px);row-gap:36px;align-items:start}
.ct-head{grid-area:head}
.ct-form-card{grid-area:form;position:sticky;top:110px}
.ct-offer{grid-area:offer}
.ct-breadcrumb{display:flex;gap:10px;margin-bottom:24px;color:var(--ct-text);font-size:12px}
.ct-breadcrumb a{color:var(--ct-deep);text-decoration:none}
.ct h1{margin:0 0 18px;color:var(--ct-ink);font-size:clamp(32px,3.6vw,50px);line-height:1.3;letter-spacing:0}
.ct h1 em{font-style:normal;color:var(--ct-blue)}
.ct-lead{margin:0 0 22px;color:var(--ct-ink);font-size:clamp(15px,1.3vw,18px);font-weight:700;line-height:1.85}
.ct-badges{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.ct-badges li{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:100px;background:#fff;border:1px solid #bcd3ec;color:var(--ct-ink);font-size:14px;font-weight:700}
.ct-badges li:before{content:"";width:16px;height:16px;border-radius:50%;background:#0a6cd6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.3l2.2 2.2 4.8-4.8' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.ct-badges li:first-child{background:var(--ct-deep);border-color:var(--ct-deep);color:#fff}
.ct-badges li:first-child:before{background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.3l2.2 2.2 4.8-4.8' fill='none' stroke='%230a4a9e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.ct-offer h2{margin:0 0 16px;max-width:none;color:var(--ct-ink);font-size:clamp(20px,2vw,24px)}
.ct-offer ol{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.ct-offer li{display:flex;gap:16px;align-items:flex-start;padding:18px 20px;border:1px solid var(--ct-line);border-radius:16px;background:#fff}
.ct-offer svg{flex:none;width:48px;height:48px}
.ct-offer b{display:block;margin-bottom:4px;color:var(--ct-ink);font-size:16px}
.ct-offer p{margin:0;color:var(--ct-text);font-size:14px;line-height:1.8}

/* Form card */
.ct-form-card{padding:clamp(22px,3vw,34px);border:1px solid #bcd3ec;border-radius:24px;background:#fff;box-shadow:0 24px 60px #0a2a5218}
.ct-form-card h2{margin:0 0 4px;max-width:none;color:var(--ct-ink);font-size:22px}
.ct-form-note{margin:0 0 18px;color:var(--ct-text);font-size:14px}
.ct .consultation-form{display:grid;gap:14px;margin:0;padding:0;border:0;background:none;box-shadow:none}
.ct .consultation-form .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ct .consultation-form label{display:block;margin:0;color:var(--ct-ink);font-size:14px;font-weight:700}
.ct .consultation-form label:not(.consent)>span{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:5px;background:#c2410c;color:#fff;font-size:11px;vertical-align:1px}
.ct .consultation-form label>small{margin-left:6px;color:var(--ct-text);font-size:12px;font-weight:400}
.ct .consultation-form label>.ct-chips{margin-top:8px}
.ct .consultation-form input:not([type=checkbox]),.ct .consultation-form select,.ct .consultation-form textarea{display:block;margin-top:6px;width:100%;min-height:48px;padding:10px 14px;border:1px solid #9fb3c8;border-radius:10px;background:#fff;color:var(--ct-ink);font:inherit;font-size:16px;font-weight:400}
.ct .consultation-form textarea{min-height:120px;line-height:1.7}
.ct .consultation-form [hidden],.ct .ct-examples[hidden]{display:none!important}
.ct-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ct-mode.is-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ct-mode.is-3 button{padding:12px}
.ct-mode.is-3 button b{font-size:14px}
.ct-mode p{grid-column:1/-1;margin:0;color:var(--ct-ink);font-size:14px;font-weight:700}
.ct-mode button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;border:2px solid #9fb3c8;border-radius:14px;background:#fff;color:var(--ct-ink);text-align:left;cursor:pointer;transition:border-color .2s,background .2s}
.ct-mode button b{font-size:15px}
.ct-mode button span{color:var(--ct-text);font-size:12px}
.ct-mode button[aria-pressed="true"]{border-color:var(--ct-deep);background:#eef6ff;box-shadow:inset 0 0 0 1px var(--ct-deep)}
.ct-mode button[aria-pressed="true"] b:before{content:"";display:inline-block;width:14px;height:14px;margin-right:6px;border-radius:50%;background:var(--ct-deep);box-shadow:inset 0 0 0 3px #fff;border:1px solid var(--ct-deep);vertical-align:-1px}
.ct-mode button:focus-visible{outline:3px solid #8fe3ff;outline-offset:2px}
.ct-doc-note{margin:12px 0 0!important;color:var(--ct-ink)!important;font-size:14px!important;font-weight:700}
/* Thanks page (download) */
.ct-thanks{padding-block:clamp(48px,7vw,96px);background:linear-gradient(180deg,#eef6ff,#fff)}
.ct-thanks-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.ct-thanks h1{margin:0 0 16px;color:var(--ct-ink);font-size:clamp(28px,3.2vw,44px);line-height:1.35}
.ct-thanks p{margin:0 0 22px;color:var(--ct-text);font-size:16px;line-height:1.9}
.ct-dl-btn{display:inline-flex;align-items:center;gap:16px;min-height:64px;padding:0 32px;border-radius:100px;background:linear-gradient(100deg,#0a6cff,#1d8fff 45%,#22c3ff);color:#fff;font-size:17px;font-weight:800;text-decoration:none;box-shadow:0 12px 30px #1784ff55}
.ct-thanks-next{margin-top:clamp(40px,6vw,72px);padding:28px;border-radius:20px;background:#061a3a;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px}
.ct-thanks-next p{margin:0;color:#d7e3f1}
.ct-thanks-next b{display:block;color:#fff;font-size:20px;margin-bottom:4px}
.ct-thanks-next a{flex:none;display:inline-flex;align-items:center;gap:12px;min-height:56px;padding:0 26px;border-radius:100px;background:#fff;color:var(--ct-deep);font-weight:800;text-decoration:none}
.ct .consultation-form input:focus,.ct .consultation-form select:focus,.ct .consultation-form textarea:focus{outline:none;border-color:var(--ct-blue);box-shadow:0 0 0 3px #0a5cc733}
.ct .consultation-form textarea::placeholder{color:#5b6778}
.ct .consultation-form .consent{display:flex;align-items:center;gap:10px;font-weight:700}
.ct .consultation-form .consent input{flex:none;width:22px;height:22px;margin:0;accent-color:var(--ct-blue)}
.ct .consultation-form .consent a{color:var(--ct-deep)}
.ct .consultation-form button[type=submit]{position:relative;overflow:hidden;width:100%;min-height:64px;margin-top:4px;border:0;border-radius:100px;background:linear-gradient(100deg,#0a6cff,#1d8fff 45%,#22c3ff);color:#fff;font-size:17px;font-weight:800;box-shadow:0 12px 30px #1784ff55;cursor:pointer;transition:transform .2s}
.ct .consultation-form button[type=submit]:hover{transform:translateY(-2px)}
.ct .consultation-form button[type=submit]:after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,#ffffff6e,transparent);transform:skewX(-20deg);animation:ctSweep 3.8s 1.5s ease-in-out infinite}
.ct .form-error{padding:12px 14px;border-radius:10px;background:#fff1ec;border:1px solid #f0a37f;color:#7a2a08;font-weight:700}
.ct-form-after{margin:14px 0 0;color:var(--ct-ink);font-size:14px;font-weight:700;line-height:1.8;text-align:center}
.ct-chips{display:flex;flex-wrap:wrap;gap:6px}
.ct-chips button{min-height:38px;padding:0 14px;border:1px solid #9fb3c8;border-radius:100px;background:#fff;color:var(--ct-ink);font-size:13px;font-weight:700;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.ct-chips button[aria-pressed="true"]{background:var(--ct-deep);border-color:var(--ct-deep);color:#fff}
.ct-chips button:focus-visible{outline:3px solid #8fe3ff;outline-offset:2px}
.ct-examples{display:flex;flex-wrap:wrap;gap:6px;margin-top:-4px}
.ct-examples p{width:100%;margin:0;color:var(--ct-text);font-size:12px;font-weight:700}
.ct-examples button{padding:6px 12px;border:1px dashed #6f8db0;border-radius:8px;background:#f7faff;color:var(--ct-deep);font-size:12px;font-weight:700;cursor:pointer}

/* Sections below */
.ct-section{padding-block:clamp(64px,8vw,104px)}
.ct-title{margin:0 0 32px;max-width:none;color:var(--ct-ink);font-size:clamp(24px,2.8vw,36px);text-align:center}
.ct-doc{background:#f5f8fc;border-top:1px solid var(--ct-line)}
.ct-doc-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.ct-doc-thumbs{position:relative;aspect-ratio:16/11}
.ct-doc-thumbs img{position:absolute;width:78%;height:auto;border-radius:10px;border:1px solid #cfdcea;box-shadow:0 18px 40px #0a2a5226;background:#fff}
.ct-doc-thumbs img:nth-child(1){right:0;top:0;transform:rotate(4deg)}
.ct-doc-thumbs img:nth-child(2){right:8%;top:14%;transform:rotate(-2deg)}
.ct-doc-thumbs img:nth-child(3){left:0;bottom:0}
.ct-doc-copy h2{margin:0 0 14px;max-width:none;color:var(--ct-ink);font-size:clamp(24px,2.6vw,34px)}
.ct-doc-copy p{margin:0 0 16px;color:var(--ct-text);font-size:15px;line-height:1.95}
.ct-doc-copy ul{display:flex;gap:8px;margin:0 0 24px;padding:0;list-style:none}
.ct-doc-copy li{padding:4px 12px;border-radius:6px;background:#e6eef8;color:var(--ct-ink);font-size:13px;font-weight:700}
.ct-doc-btn{display:inline-flex;align-items:center;gap:16px;min-height:58px;padding:0 28px;border:2px solid var(--ct-deep);border-radius:100px;background:#fff;color:var(--ct-deep);font-size:16px;font-weight:800;text-decoration:none;transition:background .2s,color .2s}
.ct-doc-btn:hover{background:var(--ct-deep);color:#fff}
.ct-flow{background:#fff}
.ct-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none}
.ct-steps li{position:relative;padding:26px 24px;border:1px solid var(--ct-line);border-radius:18px;background:#f7faff}
.ct-steps li:not(:last-child):after{content:"";position:absolute;right:-13px;top:40px;width:10px;height:10px;border-top:2px solid #1d8fff;border-right:2px solid #1d8fff;transform:rotate(45deg)}
.ct-steps span{display:grid;place-items:center;width:42px;height:42px;margin-bottom:12px;border-radius:50%;background:var(--ct-deep);color:#fff;font-weight:800}
.ct-steps h3{margin:0 0 8px;color:var(--ct-ink);font-size:18px}
.ct-steps p{margin:0;color:var(--ct-text);font-size:14px;line-height:1.8}
.ct-results{background:linear-gradient(180deg,#030a18,#05142c)}
.ct-results .ct-title{color:#fff}
.ct-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ct-result-grid article{padding:26px;border:1px solid #6cc4ff33;border-radius:20px;background:linear-gradient(160deg,#0b2347,#071833)}
.ct-r-tag{margin:0 0 8px;color:#4fd2ff;font-size:14px;font-weight:700}
.ct-r-big{margin:0 0 10px;color:#fff;font-size:clamp(28px,2.8vw,36px);font-weight:800;line-height:1.2}
.ct-result-grid p:last-child{margin:0;color:#d7e3f1;font-size:14px;line-height:1.8}
.ct-more{margin:28px 0 0;text-align:center}
.ct-more a{color:#9fe6ff;font-weight:700}
.ct-faq{background:#f5f8fc}
.ct-faq-inner{max-width:860px}
.ct-faq-list{display:grid;gap:10px}
.ct-faq details{border:1px solid var(--ct-line);border-radius:16px;background:#fff}
.ct-faq summary{position:relative;padding:20px 56px 20px 24px;color:var(--ct-ink);font-size:16px;font-weight:700;cursor:pointer;list-style:none}
.ct-faq summary::-webkit-details-marker{display:none}
.ct-faq summary:after{content:"";position:absolute;right:24px;top:50%;width:10px;height:10px;margin-top:-7px;border-right:2px solid var(--ct-deep);border-bottom:2px solid var(--ct-deep);transform:rotate(45deg);transition:transform .3s}
.ct-faq details[open] summary:after{transform:rotate(225deg);margin-top:-2px}
.ct-faq details p{margin:0;padding:0 24px 22px;color:var(--ct-text);font-size:15px;line-height:1.95}
.ct .company-profile p,.ct .company-profile dd{color:var(--ct-text)}
.ct .company-profile dt{color:var(--ct-ink);font-weight:700}
.ct .company-profile .text-link{color:var(--ct-deep)}

@keyframes ctSweep{0%{left:-60%}55%,100%{left:130%}}

@media(max-width:960px){
 .ct-top-inner{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "form" "offer"}
 .ct-form-card{position:static}
 .ct-steps,.ct-result-grid,.ct-doc-inner{grid-template-columns:minmax(0,1fr)}
 .ct-doc-thumbs{max-width:520px;width:100%;margin-inline:auto}
 .ct-doc-btn{width:100%;justify-content:space-between}
 .ct-steps li:after{display:none}
}
@media(max-width:760px){
 .ct .wrap{width:calc(100% - 32px)}
 .ct .consultation-form .form-row{grid-template-columns:minmax(0,1fr)}
 .ct-mode.is-3{grid-template-columns:minmax(0,1fr)}
 .ct-mode.is-3 button{flex-direction:row;align-items:baseline;gap:10px}
 .ct-thanks-inner{grid-template-columns:minmax(0,1fr)}
 .ct-thanks-next{flex-direction:column;align-items:stretch}
 .ct-dl-btn{width:100%;justify-content:space-between}
 .ct-badges li{font-size:13px;padding:7px 12px}
}
@media(prefers-reduced-motion:reduce){.ct *,.ct *:after{animation:none!important;transition:none!important}}
/* Contact Form 7 markup */
.ct .consultation-form label:not(.consent)>span.wpcf7-form-control-wrap{display:block;margin:0;padding:0;border-radius:0;background:none;color:inherit;font-size:inherit;vertical-align:baseline}
.ct .consultation-form .consent .wpcf7-list-item{margin:0}
.ct .consultation-form .consent label{display:flex;align-items:center;gap:10px;margin:0;font-weight:700}
.ct .consultation-form .consent .wpcf7-list-item-label{display:inline;margin:0;padding:0;border-radius:0;background:none;color:var(--ct-ink);font-size:14px;font-weight:700;vertical-align:baseline}
.ct .consultation-form .wpcf7-not-valid-tip{display:block;margin-top:6px;color:#b42318;font-size:13px;font-weight:700}
.ct .consultation-form .wpcf7-response-output{margin:4px 0 0!important;padding:12px 14px!important;border:1px solid #b42318!important;border-radius:10px;color:#7a1a12;font-size:14px;font-weight:700;line-height:1.7}
.ct .consultation-form .wpcf7-response-output:empty{display:none}
.ct .consultation-form .wpcf7-spinner{display:none}
