/* Approved Horizon studio: a bright form, alpine photograph and pearl contact panel. */
.contact-page {position:relative;isolation:isolate;padding:40px 0 48px;background:#e8f2f8;color:#213641}
.contact-page::before {content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('https://cdn.himraahitours.com/assets/images/gpt-h01.jpg') center 38%/cover no-repeat;filter:grayscale(1);opacity:.075;mix-blend-mode:multiply}
.contact-heading {margin-bottom:26px}
.contact-heading .eyebrow {font-size:11px;color:#b63212;margin:0 0 10px;letter-spacing:.16em}
.contact-heading h1 {font-size:clamp(32px,3.5vw,50px);font-weight:650;letter-spacing:-.045em;line-height:1.12;margin:0 0 12px;color:#172e3b}
.contact-heading>p:last-child {font-size:18px;color:#4f6572;margin:0;line-height:1.5}
.contact-layout {display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:24px;align-items:stretch}
.contact-form-card {min-width:0;background:#fff;border:1px solid #dce5e9;border-radius:12px;overflow:hidden;color:#26383f}
.contact-form-content {padding:28px 30px}
.contact-form-content>h2 {font-size:27px;font-weight:600;letter-spacing:-.03em;margin:0 0 22px;line-height:1.2}
.contact-form-card #enquiry-form {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px}
.contact-form-card #enquiry-form[hidden],.contact-form-card .enquiry-success[hidden] {display:none}
.contact-form-card label {font-size:13px;font-weight:500;display:block;min-width:0;color:#26383f;line-height:1.5}
.contact-form-card .full {grid-column:1/-1}
.contact-form-card .optional {font-weight:400;color:#64757e;font-size:12px}
.contact-form-card :is(input,select,textarea) {display:block;width:100%;min-width:0;max-width:100%;min-height:44px;border:1px solid #cbd8df;border-radius:6px;background:#fff;color:#26383f;font:inherit;font-size:14px;padding:10px 12px;margin-top:5px;color-scheme:light;box-shadow:none}
.contact-form-card textarea {min-height:94px;resize:vertical;line-height:1.55}
.contact-form-card :is(input,textarea)::placeholder {color:#73818b;opacity:1}
.contact-form-card :is(input,select,textarea):focus-visible,.contact-page a:focus-visible,.contact-page button:focus-visible {outline:3px solid #d93c17;outline-offset:3px}
.contact-submit {display:flex;gap:18px;align-items:center;margin-top:2px}
.contact-submit .button {flex-shrink:0;min-height:48px;border-radius:7px;font-size:13px;padding:13px 22px;gap:22px}
.contact-submit .form-help {font-size:11px;color:#63757e;line-height:1.65;margin:0}
.contact-submit .form-help a {color:#a83217;text-underline-offset:3px}
.contact-submit button:disabled {opacity:.6;cursor:not-allowed}
.contact-form-card .form-error {color:#a12f28;font-size:13px;line-height:1.5;margin:0}
.contact-form-card .form-error:empty {display:none}
.contact-honeypot {position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.contact-verification {min-width:0}
.contact-verification p,.contact-email-fallback {font-size:12px;line-height:1.65;color:#526874}
.contact-verification p {margin:0}
.contact-verification #contact-turnstile:not(:empty)+p {margin-top:8px}
.contact-email-fallback {margin:20px 0 0;overflow-wrap:anywhere}
.contact-email-fallback a,.enquiry-success a {color:#a83217;text-decoration:underline;text-underline-offset:3px}
.enquiry-success h2 {font-size:27px;line-height:1.2;margin-block:12px}
.enquiry-success p {line-height:1.65;margin-block:12px}
.contact-companion {display:flex;flex-direction:column;min-width:0;background:#f7f8f7;border:1px solid #dce5e9;border-radius:12px;overflow:hidden}
.contact-panorama {flex:1 1 auto;min-height:300px;position:relative;background:#d5e4e7}
.contact-panorama img {position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 48%}
.contact-connect {padding:28px;min-width:0;color:#213641}
.contact-connect h2 {font-size:clamp(24px,2.1vw,31px);font-weight:600;letter-spacing:-.035em;line-height:1.18;margin:0 0 12px}
.contact-connect>p {color:#60717b;font-size:14px;line-height:1.65;margin:0 0 22px;max-width:44ch}
.contact-channels {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.contact-channel {display:flex;gap:10px;align-items:center;padding:14px 12px;border:1px solid #dae3e8;border-radius:9px;background:#fff;color:#243944;min-width:0;min-height:82px;transition:background-color .2s ease,border-color .2s ease,transform .2s ease}
.contact-channel>span:last-child {margin-left:auto;font-size:20px;color:#536979}
.contact-channel-label {display:block;font-size:12px;margin-bottom:3px;color:#4b626f}
.contact-channel strong {font-size:13px;font-weight:600;line-height:1.4}
.contact-channel-icon {flex:0 0 36px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#d93c17;color:#fff}
.contact-channel-icon svg {width:20px;height:20px}
.contact-channel-icon.contact-whatsapp {background:#2b8952}
.contact-signoff {display:flex;align-items:center;gap:14px;margin-top:28px;color:#72838b}
.contact-signoff svg {width:70px;height:30px;flex-shrink:0;stroke:currentColor;stroke-width:1;stroke-linecap:round;stroke-linejoin:round}
.contact-signoff>span {height:1px;background:#cbd6dc;flex:1}
.contact-signoff p {font-size:9px;line-height:1.8;letter-spacing:.19em;margin:0}
@media(hover:hover) {.contact-channel:hover {background:#f1f7fa;border-color:#abc0cb;transform:translateY(-2px)}}
@media(max-width:1200px) and (min-width:761px) {
 .contact-form-content {padding:24px}
 .contact-connect {padding:24px}
 .contact-channels {grid-template-columns:1fr;gap:10px}
 .contact-channel {min-height:68px}
 .contact-connect h2 {font-size:27px}
 .contact-submit {align-items:flex-start;flex-direction:column;gap:10px}
 .contact-signoff {gap:10px}
 .contact-signoff svg {width:52px}
 .contact-signoff p {letter-spacing:.11em;font-size:8px}
}
@media(max-width:900px) and (min-width:761px) {
 .contact-layout {gap:18px}
 .contact-form-content {padding:22px 20px}
 .contact-form-card #enquiry-form {gap:14px 12px}
 .contact-form-content>h2 {font-size:25px}
 .contact-connect {padding:22px 18px}
 .contact-connect h2 {font-size:25px}
 .contact-panorama {min-height:320px}
}
@media(max-width:760px) {
 .contact-page {padding:28px 0 36px}
 .contact-page::before {background-size:auto 600px;background-position:center top;background-repeat:no-repeat;opacity:.05;mask-image:linear-gradient(#000 320px,transparent 580px)}
 .contact-heading {margin-bottom:24px}
 .contact-heading h1 {font-size:34px;max-width:550px}
 .contact-heading>p:last-child {font-size:16px}
 .contact-layout {grid-template-columns:minmax(0,1fr);gap:20px}
 .contact-form-content {padding:24px}
 .contact-form-content>h2 {font-size:25px;margin-bottom:22px}
 .contact-form-card #enquiry-form {gap:16px 14px}
 .contact-form-card :is(input,select,textarea) {font-size:16px}
 .contact-submit {align-items:stretch;flex-direction:column;gap:12px}
 .contact-submit .button {justify-content:center}
 .contact-submit .form-help {text-align:center}
 .contact-email-fallback {text-align:center}
 .contact-panorama {flex:none;min-height:0;aspect-ratio:1.55}
 .contact-connect {padding:24px}
 .contact-connect h2 {font-size:28px}
 .contact-channel {padding:13px 10px;gap:9px;min-height:76px}
 .contact-channel>span:last-child {display:none}
 .contact-channel-icon {flex-basis:32px;width:32px;height:32px}
 .contact-channel strong {font-size:12px}
 .contact-signoff {margin-top:24px}
}
@media(max-width:480px) {
 .contact-form-content {padding:24px 18px}
 .contact-form-card #enquiry-form {grid-template-columns:minmax(0,1fr)}
 .contact-heading h1 {font-size:32px}
 .contact-channels {grid-template-columns:1fr}
 .contact-connect {padding:24px 20px}
 .contact-channel {min-height:68px;padding:12px 14px}
 .contact-channel-icon {flex-basis:38px;width:38px;height:38px}
 .contact-channel strong {font-size:14px}
 .contact-channel>span:last-child {display:block}
 .contact-signoff p {letter-spacing:.12em}
}
@media(prefers-reduced-motion:reduce) {.contact-channel{transition:none}.contact-channel:hover{transform:none}}
