.contact-page{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:150px 0 80px;color:#132730}.contact-page *{box-sizing:border-box}.glass-contact{border:1px solid rgba(255,255,255,.76);background:linear-gradient(135deg,rgba(255,255,255,.68),rgba(218,225,223,.35));box-shadow:0 24px 70px rgba(23,44,56,.065),inset 0 1px 0 rgba(255,255,255,.84);backdrop-filter:blur(26px) saturate(1.18);-webkit-backdrop-filter:blur(26px) saturate(1.18)}
.contact-eyebrow,.contact-section-heading>span,.route-card>span,.contact-response>span,.office-details>span,.contact-direct>span,.contact-form-note{color:rgba(20,67,89,.52);font:9px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.16em}.contact-eyebrow{display:flex;align-items:center;gap:10px}.contact-eyebrow i,.contact-form-note i{width:6px;height:6px;border-radius:50%;background:#1689bd;box-shadow:0 0 0 5px rgba(22,137,189,.1)}
.contact-hero{min-height:650px;padding:80px 0 100px}.contact-hero-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.6fr);gap:70px;align-items:end;margin-top:42px}.contact-hero h1{margin:0;color:#12252e;font-size:clamp(66px,8.5vw,116px);font-weight:520;line-height:.84;letter-spacing:-.075em}.contact-hero h1 em{color:rgba(18,37,46,.3);font-style:normal}.contact-hero-grid>div>p{max-width:610px;margin:35px 0 0;color:rgba(18,37,46,.58);font-size:14px;line-height:1.75}.contact-response{padding:30px;border-radius:25px}.contact-response strong{display:block;margin:32px 0 12px;font-size:28px;font-weight:550;letter-spacing:-.035em}.contact-response p{margin:0;color:rgba(18,37,46,.55);font-size:11px;line-height:1.7}.contact-response div{display:flex;align-items:center;gap:9px;margin-top:34px;color:rgba(20,67,89,.5);font:8px ui-monospace,monospace;letter-spacing:.13em}.contact-response div i{width:6px;height:6px;border-radius:50%;background:#1bb58a;box-shadow:0 0 0 5px rgba(27,181,138,.1);animation:contactPulse 1.8s ease infinite}
.contact-routes{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:20px 0 120px}.route-card{position:relative;min-height:360px;padding:30px;border-radius:26px;overflow:hidden}.route-card::after{content:"";position:absolute;right:-100px;bottom:-120px;width:280px;height:280px;border:1px solid rgba(22,137,189,.04);border-radius:50%;box-shadow:0 0 0 55px rgba(22,137,189,.012)}.route-icon{display:grid;place-items:center;width:45px;height:45px;margin:50px 0 34px;border:1px solid rgba(22,137,189,.15);border-radius:50%;color:#1689bd;font-size:17px}.route-card h2{margin:0;font-size:31px;font-weight:540;letter-spacing:-.045em}.route-card p{min-height:52px;margin:15px 0 40px;color:rgba(18,37,46,.54);font-size:11px;line-height:1.65}.route-card a{position:relative;z-index:1;color:#153746;font-size:13px;text-decoration:none;border-bottom:1px solid rgba(22,137,189,.25)}
.contact-form-section{padding:120px 0;border-top:1px solid rgba(24,53,67,.09)}.contact-section-heading{display:grid;grid-template-columns:170px minmax(0,1fr) minmax(280px,.55fr);gap:40px;align-items:start;margin-bottom:65px}.contact-section-heading h2{margin:0;font-size:clamp(48px,6vw,78px);font-weight:520;line-height:.9;letter-spacing:-.065em}.contact-section-heading p{margin:5px 0 0;color:rgba(18,37,46,.54);font-size:11px;line-height:1.75}.contact-form-shell{padding:38px;border-radius:30px}.contact-form-demo,.contact-form-live form,.contact-form-live .wpcf7-form{display:grid;grid-template-columns:1fr 1fr;gap:25px 18px}.contact-form-note{display:flex;grid-column:1/-1;align-items:center;gap:10px;margin-bottom:14px}.contact-field,.contact-form-live label{display:flex;flex-direction:column;gap:10px;color:rgba(18,37,46,.7);font-size:11px}.contact-field-wide{grid-column:1/-1}.contact-page input:not([type=submit]),.contact-page select,.contact-page textarea,.contact-page .wpcf7-form-control:not(.wpcf7-submit){width:100%;padding:15px 0;border:0;border-bottom:1px solid rgba(24,53,67,.14);border-radius:0;outline:0;background:transparent;color:#132730;font:14px Inter,ui-sans-serif,system-ui,sans-serif;transition:border-color 200ms,box-shadow 200ms}.contact-page textarea{resize:vertical;min-height:130px}.contact-page input:focus,.contact-page select:focus,.contact-page textarea:focus{border-color:#1689bd;box-shadow:0 1px 0 #1689bd}.contact-page input::placeholder,.contact-page textarea::placeholder{color:rgba(18,37,46,.3)}.contact-form-submit{display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin-top:15px}.contact-form-submit p{max-width:430px;margin:0;color:rgba(18,37,46,.43);font-size:9px;line-height:1.55}.contact-form-submit button,.contact-page .wpcf7-submit{display:flex;align-items:center;justify-content:space-between;gap:40px;min-width:210px;padding:16px 20px;border:0;border-radius:14px;background:#173746;color:#fff;font-size:9px;letter-spacing:.13em;cursor:pointer;transition:transform 220ms,box-shadow 220ms}.contact-form-submit button:hover,.contact-page .wpcf7-submit:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(23,55,70,.18)}.contact-page .wpcf7-spinner{margin:10px}.contact-page .wpcf7-response-output{grid-column:1/-1;margin:15px 0 0!important;padding:14px 16px!important;border:1px solid rgba(22,137,189,.2)!important;border-radius:12px;color:#38525e;font-size:11px}.contact-page .wpcf7-not-valid-tip{margin-top:7px;color:#a44b45;font-size:9px}
.contact-office{display:grid;grid-template-columns:.75fr 1.25fr;gap:15px;padding:120px 0;border-top:1px solid rgba(24,53,67,.09)}.office-details,.office-map{min-height:530px;border-radius:28px}.office-details{padding:36px}.office-details h2{margin:55px 0 50px;font-size:clamp(39px,4.2vw,58px);font-weight:520;line-height:.9;letter-spacing:-.06em}.office-details dl{margin:0}.office-details dl>div{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:16px 0;border-top:1px solid rgba(24,53,67,.09)}.office-details dt{color:rgba(20,67,89,.44);font:8px ui-monospace,monospace;letter-spacing:.14em}.office-details dd{margin:0;color:rgba(18,37,46,.62);font-size:11px;line-height:1.65}.office-details a{color:inherit;text-decoration:none}.office-map{position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(235,239,237,.86),rgba(209,220,219,.68))}.map-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(18,72,93,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(18,72,93,.045) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent)}.map-road{position:absolute;height:1px;background:rgba(21,83,107,.16);transform-origin:left}.map-road-a{top:29%;left:-5%;width:115%;transform:rotate(16deg)}.map-road-b{top:62%;left:-5%;width:115%;transform:rotate(-11deg)}.map-road-c{top:7%;left:52%;width:90%;transform:rotate(78deg)}.map-marker{position:absolute;top:47%;left:55%;display:grid;justify-items:center;transform:translate(-50%,-50%)}.map-marker i{width:18px;height:18px;border:5px solid #f4f4f1;border-radius:50%;background:#1689bd;box-shadow:0 0 0 1px rgba(22,137,189,.3),0 0 0 12px rgba(22,137,189,.08),0 20px 38px rgba(17,66,86,.22)}.map-marker strong{margin-top:22px;font-size:13px;letter-spacing:.15em}.map-marker span{margin-top:7px;color:rgba(18,37,46,.45);font:7px ui-monospace,monospace;letter-spacing:.13em}.map-caption{position:absolute;right:28px;bottom:26px;left:28px;display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid rgba(24,53,67,.1);color:rgba(20,67,89,.5);font:8px ui-monospace,monospace;letter-spacing:.13em}.map-caption a{color:inherit;text-decoration:none}
.contact-direct{display:grid;grid-template-columns:180px 1fr auto;gap:40px;align-items:center;margin:0 0 100px;padding:38px;border-radius:26px}.contact-direct h2{margin:0;font-size:32px;font-weight:520;letter-spacing:-.04em}.contact-direct a{display:flex;align-items:center;gap:34px;color:#153746;font-size:17px;text-decoration:none}.contact-direct a i{font-style:normal;transition:transform 200ms}.contact-direct a:hover i{transform:translate(4px,-4px)}
.contact-form-live form>p{margin:0}.contact-form-live form>p:nth-last-of-type(-n+2){grid-column:1/-1}
.contact-reveal{opacity:0;filter:blur(5px);transform:translateY(28px);animation:contactReveal 1.05s cubic-bezier(.16,1,.3,1) forwards}.contact-routes{animation-delay:.14s}.contact-form-section{animation-delay:.22s}.contact-office{animation-delay:.3s}.contact-direct{animation-delay:.38s}@keyframes contactReveal{to{opacity:1;filter:blur(0);transform:none}}@keyframes contactPulse{50%{opacity:.4}}
@media(max-width:760px){.contact-page{width:calc(100% - 24px);padding:110px 0 45px}.contact-hero{min-height:auto;padding:50px 0 75px}.contact-hero-grid{grid-template-columns:1fr;gap:40px;margin-top:30px}.contact-hero h1{font-size:clamp(55px,17vw,76px)}.contact-hero-grid>div>p{font-size:12px}.contact-response{padding:24px}.contact-routes{grid-template-columns:1fr;padding-bottom:80px}.route-card{min-height:300px;padding:24px}.route-icon{margin:35px 0 25px}.route-card p{min-height:auto}.contact-form-section,.contact-office{padding:80px 0}.contact-section-heading{grid-template-columns:1fr;gap:18px;margin-bottom:40px}.contact-section-heading h2{font-size:50px}.contact-form-shell{padding:24px 18px}.contact-form-demo,.contact-form-live form,.contact-form-live .wpcf7-form{grid-template-columns:1fr}.contact-field-wide{grid-column:auto}.contact-form-submit{flex-direction:column;align-items:stretch;gap:25px}.contact-form-submit button,.contact-page .wpcf7-submit{width:100%}.contact-office{grid-template-columns:1fr}.office-details,.office-map{min-height:470px}.office-details{padding:28px}.office-map{min-height:420px}.contact-direct{grid-template-columns:1fr;gap:18px;margin-bottom:55px;padding:28px}.contact-direct h2{font-size:28px}.contact-direct a{justify-content:space-between;font-size:15px}}
@media(prefers-reduced-motion:reduce){.contact-reveal{opacity:1;filter:none;transform:none;animation:none}}

/* Contact Form 7 production integration. */
.contact-form-live .wpcf7{width:100%}.contact-form-live .wpcf7-form{display:grid;grid-template-columns:1fr 1fr;gap:25px 18px}.contact-form-live .contact-form-note,.contact-form-live .contact-field-wide,.contact-form-live .contact-form-submit,.contact-form-live .wpcf7-response-output{grid-column:1/-1}.contact-form-live .contact-form-note{display:flex;align-items:center;gap:10px;margin-bottom:8px}.contact-form-live .contact-field{display:flex;flex-direction:column;gap:10px}.contact-form-live .contact-field>label{color:rgba(18,37,46,.72);font-size:11px}.contact-form-live .contact-field .wpcf7-form-control-wrap{display:block;width:100%}.contact-form-live .contact-field .wpcf7-form-control{display:block}.contact-form-live .contact-field textarea{min-height:150px}.contact-form-live .contact-form-submit{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:28px;margin-top:14px}.contact-form-live .contact-form-submit>p{max-width:440px;margin:0;color:rgba(18,37,46,.48);font-size:10px;line-height:1.6}.contact-form-live .contact-form-submit .wpcf7-submit{min-width:220px;margin:0;padding:17px 22px;border:0;border-radius:14px;background:#173746;color:#fff;font:600 9px Inter,system-ui,sans-serif;letter-spacing:.13em;cursor:pointer}.contact-form-live .wpcf7-not-valid{border-bottom-color:#a44b45!important}.contact-form-live .wpcf7-not-valid-tip{display:block;margin-top:7px;color:#9c4945;font-size:10px}.contact-form-live .wpcf7-response-output{margin:12px 0 0!important;padding:15px 18px!important;border:1px solid rgba(22,137,189,.2)!important;border-radius:13px;background:rgba(255,255,255,.34);color:#38525e;font-size:11px}.contact-form-live form.sent .wpcf7-response-output{border-color:rgba(27,181,138,.3)!important}.contact-form-live form.invalid .wpcf7-response-output,.contact-form-live form.failed .wpcf7-response-output{border-color:rgba(164,75,69,.27)!important}.contact-form-setup,.contact-form-unavailable{display:flex;align-items:flex-start;gap:18px;padding:26px;border:1px dashed rgba(22,137,189,.22);border-radius:18px;background:rgba(255,255,255,.24)}.contact-form-setup>i,.contact-form-unavailable>i{flex:0 0 auto;width:7px;height:7px;margin-top:5px;border-radius:50%;background:#1689bd;box-shadow:0 0 0 5px rgba(22,137,189,.1)}.contact-form-setup>div{display:grid;gap:9px}.contact-form-setup span,.contact-form-unavailable span{color:rgba(20,67,89,.55);font:8px ui-monospace,monospace;letter-spacing:.14em}.contact-form-setup strong{font-size:16px;font-weight:550}.contact-form-setup p{margin:0;color:rgba(18,37,46,.52);font-size:11px;line-height:1.65}.contact-form-unavailable{justify-content:center;align-items:center}.contact-form-unavailable>i{margin:0;background:#d5a141;box-shadow:0 0 0 5px rgba(213,161,65,.1)}.contact-form-unavailable a{margin-left:auto;color:#153746;font-size:12px;text-decoration:none}
@media(max-width:760px){.contact-form-live .wpcf7-form{grid-template-columns:1fr}.contact-form-live .contact-form-note,.contact-form-live .contact-field-wide,.contact-form-live .contact-form-submit,.contact-form-live .wpcf7-response-output{grid-column:auto}.contact-form-live .contact-form-submit{flex-direction:column;align-items:stretch}.contact-form-live .contact-form-submit .wpcf7-submit{width:100%}.contact-form-unavailable{align-items:flex-start;flex-wrap:wrap;justify-content:flex-start}.contact-form-unavailable a{width:100%;margin:8px 0 0 25px}}
.contact-form-live .wpcf7-form>p{display:contents}
