/* Royal Dream Contact EN/AR: directly reuses the existing Services/Tours hero. */
.contact-page{background:var(--rd-primary-bg);color:var(--rd-text);font-family:var(--rd-font-body)}
.contact-page *{box-sizing:border-box}
.contact-page .ct-hero .services-hero__display{max-width:800px}
.contact-page .ct-hero h1{max-width:650px}
.contact-page .ct-hero .services-hero__facts{max-width:750px}
.contact-page .ct-section{scroll-margin-top:88px}
.contact-page .ct-kicker{display:inline-block;margin-bottom:12px;color:var(--rd-olive);font-size:11px;letter-spacing:.13em;font-weight:800;text-transform:uppercase}
.contact-page .sd-section--dark .ct-kicker{color:var(--rd-accent)}
.ct-channel-grid,.ct-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ct-channel{display:flex;flex-direction:column;min-height:230px;padding:28px;border:1px solid var(--rd-border);border-radius:23px;background:#fff;text-decoration:none!important;color:var(--rd-text)!important;box-shadow:0 15px 35px rgba(15,43,45,.055);transition:transform .2s,border-color .2s}
.ct-channel:hover{transform:translateY(-4px);border-color:var(--rd-olive)}
.ct-channel__type{display:flex;justify-content:space-between;gap:10px;color:var(--rd-olive);font-size:10px;letter-spacing:.12em;font-weight:800}
.ct-channel h3,.ct-info-card h3{font-size:clamp(20px,2vw,27px);line-height:1.2;letter-spacing:-.035em;margin:23px 0 0;font-weight:750}
.ct-channel p,.ct-info-card p{font-size:14px;line-height:1.75;color:var(--rd-muted);margin:12px 0 17px}
.ct-channel strong{font-size:13px;overflow-wrap:anywhere;margin-top:auto;color:var(--rd-olive);font-weight:800}
.ct-form-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:26px;align-items:start}
.ct-form-panel{min-width:0;padding:30px;background:#fff;border:1px solid var(--rd-border);border-radius:26px;box-shadow:0 15px 55px rgba(14,38,41,.07)}
.ct-tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--rd-primary-bg);padding:6px;gap:4px;border-radius:16px;margin-bottom:25px}
.ct-tab{appearance:none;border:0;background:transparent;padding:15px 12px;border-radius:12px;color:var(--rd-muted);font-size:12px;line-height:1.45;font-weight:800;cursor:pointer;min-height:53px}
.ct-tab.is-active{background:var(--rd-dark);color:#fff;box-shadow:0 9px 20px rgba(13,42,43,.13)}
.ct-tab:focus-visible,.ct-form :focus-visible{outline:3px solid var(--rd-accent);outline-offset:3px}
.ct-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}
.ct-field{display:flex;flex-direction:column;min-width:0;gap:8px;font-size:12px;font-weight:800;color:var(--rd-text)}
.ct-field--wide{margin-bottom:18px}
.ct-field input,.ct-field select,.ct-field textarea{display:block;width:100%;min-height:49px;border:1px solid var(--rd-border);border-radius:12px;padding:12px 13px;background:#fafbf9;color:var(--rd-text);font-size:14px;font-weight:500;line-height:1.4;box-shadow:none}
.ct-field select{cursor:pointer}
.ct-field textarea{min-height:126px;resize:vertical}
.ct-field input[aria-invalid="true"],.ct-field select[aria-invalid="true"],.ct-field textarea[aria-invalid="true"]{border-color:#ac352f;background:#fffafa}
.ct-field input::placeholder,.ct-field textarea::placeholder{color:#84918b;opacity:1}
.ct-form .ct-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.65;color:var(--rd-text);margin:12px 0;cursor:pointer}
.ct-consent input{flex:none;margin-top:3px;width:18px;height:18px;accent-color:var(--rd-olive)}
.ct-submit{border:0;cursor:pointer;min-width:220px;color:var(--rd-text)!important}
.ct-submit:disabled{cursor:progress;opacity:.75}
.ct-feedback{margin-bottom:18px;padding:14px 16px;border-radius:12px;font-size:13px;line-height:1.6;font-weight:700}
.ct-feedback--error{color:#882b23;background:#fff1ef;border:1px solid #f0bdb6}
.ct-feedback--success{color:#204c27;background:#edf8e9;border:1px solid #b3d4ac}
.ct-feedback[hidden],.ct-panel[hidden],[data-general-asterisk][hidden]{display:none!important}
.ct-fineprint{margin:12px 0 0;font-size:11px;line-height:1.65;color:var(--rd-muted)}
.ct-honeypot{position:absolute;left:-99999px;width:1px;height:1px;overflow:hidden}
.ct-form-aside{border-radius:26px;padding:30px;background:linear-gradient(145deg,#142e36,var(--rd-dark));color:#fff}
.ct-form-aside .ct-kicker{color:var(--rd-accent)}
.ct-form-aside h3{font-size:clamp(27px,2.7vw,39px);line-height:1.17;letter-spacing:-.045em;margin:0 0 18px}
.ct-form-aside>p,.ct-aside-item p{font-size:13px;line-height:1.8;color:rgba(255,255,255,.77)}
.ct-aside-item{padding:19px 0;border-top:1px solid rgba(255,255,255,.17)}
.ct-aside-item:first-of-type{margin-top:22px}
.ct-aside-item strong{font-size:14px}
.ct-aside-item p{margin:7px 0 0}
.ct-team-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.7fr);gap:24px;padding:32px;border-radius:24px;background:var(--rd-dark);color:#fff}
.ct-team-card .ct-kicker{color:var(--rd-accent)}
.ct-team-card h3{font-size:34px;line-height:1.1;margin:6px 0}
.ct-team-card p{color:rgba(255,255,255,.75);line-height:1.7;font-size:13px;max-width:580px}
.ct-team-card__links{display:grid;gap:11px;align-content:center}
.ct-team-card__links a{padding:13px 15px;text-decoration:none!important;border:1px solid rgba(255,255,255,.28);border-radius:12px;color:#fff!important;font-size:13px;font-weight:700;overflow-wrap:anywhere}
.ct-team-card__links a:hover{border-color:var(--rd-accent)}
.ct-section--steps{background:linear-gradient(135deg,#133139,#255762)}
.ct-step-grid{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;padding:0;margin:0}
.ct-step-grid li{padding:25px 22px;border:1px solid rgba(255,255,255,.18);border-radius:22px;background:rgba(255,255,255,.055)}
.ct-step-grid li>span{display:block;color:var(--rd-accent);font-family:var(--rd-font-accent);font-size:29px;margin-bottom:18px}
.ct-step-grid h3{color:#fff;margin:0;font-size:22px;line-height:1.25}
.ct-step-grid p{font-size:13px;line-height:1.72;color:rgba(255,255,255,.76)}
.ct-info-card{background:#fff;border:1px solid var(--rd-border);padding:27px;border-radius:22px;min-height:192px}
.ct-info-card h3{margin-top:0}
.ct-important{margin-top:24px;padding:18px 20px;border-left:4px solid var(--rd-accent);border-radius:0 15px 15px 0;background:#e7eddf;color:var(--rd-text);font-size:14px;line-height:1.7}
.ct-text-link{display:inline-flex;margin-top:22px;font-size:12px;letter-spacing:.02em;font-weight:800;color:var(--rd-olive)!important;text-decoration:none}
.ct-text-link:hover{text-decoration:underline}
.ct-faq-list{display:grid;gap:10px;max-width:1030px}
.ct-faq{border:1px solid var(--rd-border);border-radius:15px;padding:0 21px;background:#fff}
.ct-faq summary{padding:20px 0;cursor:pointer;font-size:15px;font-weight:750;line-height:1.55}
.ct-faq[open] summary{color:var(--rd-olive)}
.ct-faq p{font-size:13px;color:var(--rd-muted);line-height:1.8;padding:0 0 20px;margin:0}
.ct-section--final{background:linear-gradient(130deg,#142f37,#255762)}
.ct-section--final h2{font-size:clamp(32px,4vw,56px);line-height:1.13;max-width:860px;color:#fff;letter-spacing:-.045em;margin:7px 0 16px}
.ct-section--final p{max-width:800px;color:rgba(255,255,255,.78);line-height:1.8;font-size:16px}
.ct-final-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}
html[lang="ar"] .contact-page .ct-kicker{letter-spacing:0;text-transform:none}
html[lang="ar"] .contact-page h1,html[lang="ar"] .contact-page h2,html[lang="ar"] .contact-page h3{font-family:"Cairo",sans-serif;letter-spacing:0;line-height:1.35}
html[lang="ar"] .contact-page .ct-hero .services-hero__display{font-family:"Cairo",sans-serif;letter-spacing:0}
html[lang="ar"] .contact-page :is(input,select,textarea){font-family:"Cairo",sans-serif}
html[lang="ar"] .contact-page .ct-important{border-left:0;border-right:4px solid var(--rd-accent);border-radius:15px 0 0 15px}
html[lang="ar"] .contact-page .ct-channel__type{letter-spacing:0}
@media(max-width:1100px){.ct-form-layout{grid-template-columns:1fr}.ct-form-aside{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.ct-form-aside>.ct-kicker,.ct-form-aside>h3,.ct-form-aside>p{grid-column:1/-1}.ct-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.ct-channel-grid,.ct-info-grid{grid-template-columns:1fr}.ct-team-card{grid-template-columns:1fr}.ct-form-aside{display:block}.ct-section--final h2{font-size:clamp(30px,7.5vw,47px)}}
@media(max-width:550px){.ct-form-panel{padding:17px;border-radius:18px}.ct-fields{grid-template-columns:1fr;gap:12px}.ct-tab{font-size:11px;padding:12px 6px}.ct-channel,.ct-info-card{padding:22px;min-height:0}.ct-team-card{padding:24px}.ct-step-grid{grid-template-columns:1fr}.ct-step-grid li{padding:20px}.ct-submit{width:100%}.ct-form-aside{padding:24px}}
@media(prefers-reduced-motion:reduce){.ct-channel{transition:none}}
