.contact-page { --ct-ink:#10182d; --ct-text:#405071; --ct-muted:#74809b; --ct-line:#e7e8f3; --ct-violet:#5e13ef; --ct-pink:#ed3f8d; --ct-gradient:linear-gradient(110deg,#5512ef,#8524ed 52%,#ed3f8d); width:100%; color:var(--ct-ink); }
.contact-page *,.contact-page *::before,.contact-page *::after { box-sizing:border-box; }
.contact-page button { font:inherit; }
.contact-eyebrow,.contact-heading>span,.contact-location__body>span { margin-bottom:18px; color:#5b6a8e; font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.contact-hero { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(370px,.92fr); gap:clamp(38px,7vw,105px); align-items:center; overflow:hidden; min-height:610px; padding:clamp(46px,7vw,90px); background:radial-gradient(circle at 87% 17%,rgba(237,63,141,.14),transparent 28%),radial-gradient(circle at 67% 88%,rgba(94,19,239,.13),transparent 33%),linear-gradient(135deg,#fff,#faf8ff); border:1px solid var(--ct-line); border-radius:28px; box-shadow:0 28px 80px rgba(36,27,81,.07); }
.contact-hero h1 { max-width:800px; margin:0; font-size:clamp(48px,6vw,78px); line-height:1.02; letter-spacing:-.05em; }
.contact-hero h1 span { color:transparent; background:var(--ct-gradient); -webkit-background-clip:text; background-clip:text; }
.contact-hero__copy>p { max-width:720px; margin:25px 0 0; color:var(--ct-text); font-size:clamp(17px,1.55vw,21px); line-height:1.65; }
.contact-hero__actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.contact-hero__actions button,.contact-start__card>button,.contact-cta button { display:inline-flex; min-height:52px; align-items:center; justify-content:center; gap:17px; padding:13px 23px; color:#fff; font-weight:700; cursor:pointer; background:var(--ct-gradient); border:0; border-radius:12px; box-shadow:0 14px 34px rgba(94,19,239,.24); transition:transform .25s ease; }
.contact-hero__actions button:hover,.contact-start__card>button:hover,.contact-cta button:hover { transform:translateY(-2px); }
.contact-hero__actions a { display:inline-flex; min-height:52px; align-items:center; justify-content:center; padding:12px 22px; color:var(--ct-violet); font-weight:700; text-decoration:none; background:#fff; border:1px solid rgba(94,19,239,.22); border-radius:12px; }
.contact-hero__note { display:flex; align-items:center; gap:12px; margin-top:28px; color:var(--ct-muted); font-size:12px; }
.contact-hero__note i { width:9px; height:9px; background:#2dcf84; border:3px solid #dff8ec; border-radius:50%; box-sizing:content-box; }
.contact-hero__note span { display:grid; }
.contact-hero__note strong { color:var(--ct-ink); font-size:13px; }
.contact-hero__visual { position:relative; min-height:430px; }
.contact-hero__orbit { position:absolute; inset:9%; border:1px dashed rgba(94,19,239,.2); border-radius:50%; transform:rotate(-18deg); }
.contact-hero__orbit--two { inset:22%; border-style:solid; border-color:rgba(237,63,141,.12); transform:rotate(25deg); }
.contact-hero__plane { position:absolute; z-index:2; top:50%; left:50%; display:flex; width:170px; height:170px; align-items:center; justify-content:center; background:rgba(255,255,255,.82); border:1px solid rgba(94,19,239,.11); border-radius:38px; box-shadow:0 30px 65px rgba(64,31,125,.16); transform:translate(-50%,-50%) rotate(-7deg); backdrop-filter:blur(10px); }
.contact-hero__plane svg { width:105px; height:105px; }
.contact-hero__message { position:absolute; z-index:3; display:flex; align-items:center; gap:10px; width:215px; padding:13px 14px; background:rgba(255,255,255,.9); border:1px solid rgba(94,19,239,.11); border-radius:13px; box-shadow:0 16px 38px rgba(38,27,78,.12); backdrop-filter:blur(10px); }
.contact-hero__message--left { bottom:12%; left:-3%; }
.contact-hero__message--right { top:13%; right:-3%; }
.contact-hero__message i { display:flex; flex:0 0 29px; width:29px; height:29px; align-items:center; justify-content:center; color:#fff; font-size:13px; font-style:normal; background:var(--ct-gradient); border-radius:50%; }
.contact-hero__message span { display:grid; color:var(--ct-muted); font-size:10px; line-height:1.35; }
.contact-hero__message strong { color:var(--ct-ink); font-size:12px; }
.contact-section { margin-top:clamp(82px,9vw,132px); }
.contact-heading { max-width:820px; margin-bottom:42px; }
.contact-heading>span { display:block; margin-bottom:15px; }
.contact-heading h2 { margin:0; font-size:clamp(36px,4.3vw,57px); line-height:1.08; letter-spacing:-.04em; }
.contact-heading>p { max-width:710px; margin:18px 0 0; color:var(--ct-text); font-size:17px; line-height:1.65; }
.contact-heading--light h2 { color:#fff; }
.contact-heading--light>span { color:#bca6ff; }
.contact-heading--light>p { color:rgba(255,255,255,.68); }
.contact-methods { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
.contact-method { display:flex; min-width:0; min-height:310px; flex-direction:column; padding:25px; color:var(--ct-ink); text-decoration:none; background:#fff; border:1px solid var(--ct-line); border-radius:18px; box-shadow:0 15px 42px rgba(30,22,70,.05); transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.contact-method:hover { color:var(--ct-ink); transform:translateY(-5px); border-color:rgba(94,19,239,.25); box-shadow:0 22px 52px rgba(30,22,70,.1); }
.contact-method__icon { display:flex; width:54px; height:54px; align-items:center; justify-content:center; color:var(--ct-violet); background:#f3edff; border-radius:14px; }
.contact-method__icon svg { width:28px; height:28px; }
.contact-method--whatsapp .contact-method__icon { color:#14a568; background:#eafaf3; }
.contact-method--email .contact-method__icon { color:#db3f83; background:#fff0f7; }
.contact-method--phone .contact-method__icon { color:#2f7bdc; background:#edf5ff; }
.contact-method__label { margin-top:26px; color:var(--ct-muted); font-size:12px; font-weight:700; text-transform:uppercase; }
.contact-method>strong { overflow-wrap:anywhere; margin-top:7px; font-size:18px; }
.contact-method>small { margin-top:8px; color:var(--ct-muted); font-size:12px; line-height:1.45; }
.contact-method>b { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:20px; color:var(--ct-violet); font-size:13px; border-top:1px solid var(--ct-line); }
.contact-method>b i { font-style:normal; }
.contact-start { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr); gap:18px; align-items:stretch; }
.contact-start__card { padding:clamp(38px,5vw,62px); color:#fff; background:radial-gradient(circle at 92% 8%,rgba(121,47,235,.35),transparent 30%),#111526; border-radius:23px; }
.contact-start__steps { display:grid; gap:0; margin:0 0 32px; padding:0; list-style:none; counter-reset:none; }
.contact-start__steps li { display:grid; grid-template-columns:45px 1fr; gap:18px; padding:22px 0; border-top:1px solid rgba(255,255,255,.12); }
.contact-start__steps li>span { color:#baa2ff; font-size:12px; font-weight:800; }
.contact-start__steps strong { font-size:17px; }
.contact-start__steps p { margin:7px 0 0; color:rgba(255,255,255,.6); font-size:13px; line-height:1.55; }
.contact-start__card>button { box-shadow:none; }
.contact-location { overflow:hidden; background:#fff; border:1px solid var(--ct-line); border-radius:23px; box-shadow:0 18px 50px rgba(30,22,70,.06); }
.contact-location__map { position:relative; overflow:hidden; height:235px; background:linear-gradient(145deg,#f1ebff,#fff3f9); }
.contact-location__map::before,.contact-location__map::after { content:""; position:absolute; width:140%; height:1px; background:rgba(94,19,239,.12); transform:rotate(28deg); }
.contact-location__map::before { top:35%; left:-20%; }
.contact-location__map::after { top:62%; left:-20%; transform:rotate(-18deg); }
.contact-location__map>span { position:absolute; inset:24px; border:1px dashed rgba(94,19,239,.17); border-radius:50%; }
.contact-location__map>i { position:absolute; z-index:2; top:46%; left:50%; width:30px; height:30px; background:var(--ct-gradient); border:8px solid #fff; border-radius:50% 50% 50% 0; box-shadow:0 12px 25px rgba(94,19,239,.24); transform:translate(-50%,-50%) rotate(-45deg); }
.contact-location__map>b { position:absolute; z-index:2; top:62%; left:50%; color:var(--ct-violet); font-size:13px; transform:translateX(-50%); }
.contact-location__body { padding:28px; }
.contact-location__body>span { display:block; margin-bottom:10px; }
.contact-location__body h3 { margin:0 0 10px; font-size:25px; }
.contact-location__body>p { margin:0 0 23px; color:var(--ct-text); font-size:14px; line-height:1.6; }
.contact-location__body>div { display:grid; gap:3px; padding:13px 0; border-top:1px solid var(--ct-line); }
.contact-location__body>div strong { font-size:13px; }
.contact-location__body>div small { color:var(--ct-muted); font-size:11px; line-height:1.4; }
.contact-faq { display:grid; grid-template-columns:minmax(260px,.68fr) minmax(0,1.32fr); gap:clamp(40px,8vw,120px); }
.contact-faq .contact-heading { margin:0; }
.contact-faq__list { border-top:1px solid var(--ct-line); }
.contact-faq__list details { border-bottom:1px solid var(--ct-line); }
.contact-faq__list summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:25px 0; font-size:17px; font-weight:650; cursor:pointer; list-style:none; }
.contact-faq__list summary::-webkit-details-marker { display:none; }
.contact-faq__list summary i { display:flex; flex:0 0 34px; width:34px; height:34px; align-items:center; justify-content:center; color:var(--ct-violet); font-size:22px; font-style:normal; background:#f3edff; border-radius:50%; transition:transform .25s ease; }
.contact-faq__list details[open] summary i { transform:rotate(45deg); }
.contact-faq__list p { max-width:760px; margin:-6px 55px 25px 0; color:var(--ct-text); line-height:1.65; }
.contact-cta { display:flex; align-items:center; justify-content:space-between; gap:46px; margin-top:clamp(82px,9vw,132px); padding:clamp(42px,6vw,72px); color:#fff; background:radial-gradient(circle at 75% 10%,rgba(255,255,255,.16),transparent 25%),var(--ct-gradient); border-radius:26px; box-shadow:0 28px 70px rgba(94,19,239,.2); }
.contact-cta>div { max-width:800px; }
.contact-cta>div>span { font-size:14px; font-weight:700; opacity:.75; }
.contact-cta h2 { margin:10px 0 12px; font-size:clamp(30px,4vw,47px); line-height:1.12; letter-spacing:-.035em; }
.contact-cta p { margin:0; font-size:17px; opacity:.78; }
.contact-cta button { flex:0 0 auto; color:var(--ct-violet); background:#fff; box-shadow:none; }

@media(max-width:1199.98px){.contact-methods{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-method{min-height:280px}}
@media(max-width:991.98px){.contact-hero{grid-template-columns:1fr 320px;padding:48px 36px}.contact-hero__visual{min-height:380px}.contact-start{grid-template-columns:1fr}.contact-faq{grid-template-columns:1fr}.contact-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:767.98px){.contact-hero{grid-template-columns:1fr;padding:34px 22px;border-radius:20px}.contact-hero h1{font-size:clamp(42px,12vw,58px)}.contact-hero__actions{flex-direction:column}.contact-hero__actions>*{width:100%}.contact-hero__visual{min-height:320px}.contact-hero__plane{width:135px;height:135px;border-radius:30px}.contact-hero__plane svg{width:86px;height:86px}.contact-hero__message{width:185px}.contact-hero__message--left{left:0}.contact-hero__message--right{right:0}.contact-methods{grid-template-columns:1fr}.contact-method{min-height:270px}.contact-start__card{padding:34px 22px}.contact-faq__list summary{font-size:15px}.contact-faq__list p{margin-right:0}.contact-cta{padding:34px 22px;border-radius:20px}.contact-cta button{width:100%}}
