/* Account and editorial pages: isolated modern layout layer. */
.tv-account-page,
.tv-editorial-page {
  --tv-navy: #071d72;
  --tv-ink: #182536;
  --tv-muted: #667085;
  --tv-line: #e6eaf0;
  --tv-surface: #fff;
  --tv-soft: #f5f8fc;
  background: var(--tv-soft);
  color: var(--tv-ink);
  padding: 48px max(20px, calc((100% - 1180px) / 2));
  font-family: "Noto Sans", sans-serif;
}
.tv-account-page *,
.tv-editorial-page * { box-sizing: border-box; }
.tv-account-page img,
.tv-editorial-page img { max-width: 100%; height: auto; }

.tv-account-page.trave-profile { margin-top: 0; gap: 28px; align-items: stretch; }
.tv-account-page .text-block { margin: 0; }
.tv-account-page .service-button-frame { display: block; }
.tv-account-page .my-profile,
.tv-editorial-page h1 { color: var(--tv-navy); font-family: Volkhov, Georgia, serif; font-size: clamp(30px, 4vw, 48px); line-height: 1.15; margin: 0 0 8px; }
.tv-account-page .home-account { color: var(--tv-muted); }
.tv-account-page .header-frame1 { width: 100%; max-width: none; display: grid; grid-template-columns: minmax(260px, .75fr) minmax(0, 1.6fr); gap: 28px; align-items: start; }
.tv-account-page .frame-title,
.tv-account-page .header-content { width: auto; min-width: 0; background: var(--tv-surface); border: 1px solid var(--tv-line); border-radius: 18px; box-shadow: 0 12px 34px rgba(17, 37, 80, .07); }
.tv-account-page .frame-title { padding: 24px; }
.tv-account-page .header-content { padding: 28px; }
.tv-account-page .frame-content { width: 100%; }
.tv-account-page .frame-header { gap: 18px; }
.tv-account-page .cairo-street { display: none; }
.tv-account-page .email-field ul { padding: 16px 0 0; margin: 16px 0 0; border-top: 1px solid var(--tv-line); list-style: none; }
.tv-account-page .email-field li { margin: 3px 0; }
.tv-account-page .email-field a,
.tv-account-page .email-field button { display: flex; width: 100%; align-items: center; gap: 11px; border-radius: 10px; padding: 11px 12px; color: var(--tv-ink); text-decoration: none; font-weight: 600; }
.tv-account-page .email-field a:hover,
.tv-account-page .email-field a:focus-visible,
.tv-account-page .email-field button:hover,
.tv-account-page .email-field button:focus-visible { background: #eef2ff; color: var(--tv-navy); outline: none; }
.tv-account-page .active2 { background: #e8eeff; color: var(--tv-navy) !important; }
.tv-account-page input,
.tv-account-page select,
.tv-contact-form input,
.tv-contact-form textarea { width: 100%; border: 1px solid #d5dce7; border-radius: 10px; padding: 12px 14px; min-height: 46px; background: #fff; color: var(--tv-ink); }
.tv-account-page input:focus,
.tv-account-page select:focus,
.tv-contact-form input:focus,
.tv-contact-form textarea:focus { border-color: var(--tv-navy); box-shadow: 0 0 0 3px rgba(7,29,114,.13); outline: none; }
.tv-account-page .menu-btn { align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px; margin-bottom: 20px; }
.tv-account-page .personal-information { margin: 0; font-size: 24px; color: var(--tv-navy); }
.tv-account-page .notification,
.tv-account-page .notification1 { width: 100%; min-height: 0; margin: 12px 0; padding: 16px; border: 1px solid var(--tv-line); border-radius: 14px; background: #fff; box-shadow: none; cursor: pointer; transition: border-color .15s ease, box-shadow .15s ease; }
.tv-account-page .notification { border-inline-start: 4px solid var(--tv-navy); }
.tv-account-page .notification1 { border-inline-start: 4px solid #a7b3c9; }
.tv-account-page .notification:hover { border-color: #98a8d9; box-shadow: 0 8px 22px rgba(17,37,80,.08); }
.tv-account-page .notification-img,
.tv-account-page .notification-img img { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; margin: 0; }
.tv-account-page .notification-detils { width: auto; flex: 1; min-width: 0; padding-inline-start: 14px; }
.tv-account-page .Four-Seasons h1,
.tv-account-page .Four-Seasons h3 { margin: 0; font: 700 18px/1.35 "Noto Sans", sans-serif; color: var(--tv-ink); }
.tv-account-page .Four-Seasons h2,
.tv-account-page .Request-number p { color: var(--tv-muted); }
.tv-account-page .popup-osman10 { z-index: 1000; }
.tv-account-page .popupNotifications1 { width: min(960px, calc(100vw - 32px)); max-width: 100%; }

.tv-editorial-page { margin: 0; min-height: 55vh; }
.tv-editorial-page .tv-page-shell { max-width: 980px; margin: 0 auto; }
.tv-editorial-page .tv-page-kicker { color: var(--tv-navy); font-weight: 700; letter-spacing: .04em; text-transform: uppercase; margin-bottom: 10px; }
.tv-editorial-page .tv-legal-content { background: #fff; border: 1px solid var(--tv-line); border-radius: 18px; box-shadow: 0 12px 34px rgba(17,37,80,.06); padding: clamp(22px, 4vw, 48px); line-height: 1.8; font-size: 16px; }
.tv-editorial-page .tv-legal-content h2,
.tv-editorial-page .tv-legal-content h3 { color: var(--tv-navy); margin: 1.7em 0 .65em; line-height: 1.35; }
.tv-editorial-page .tv-legal-content p,
.tv-editorial-page .tv-legal-content li { color: #3e4a59; }
.tv-editorial-page .tv-legal-content a { color: var(--tv-navy); text-decoration: underline; }
.tv-about-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 28px; }
.tv-about-card { background: #fff; border: 1px solid var(--tv-line); border-radius: 16px; padding: 22px; box-shadow: 0 8px 20px rgba(17,37,80,.05); }
.tv-about-card h2 { color: var(--tv-navy); font-size: 20px; margin: 0 0 10px; }
.tv-about-card p { color: var(--tv-muted); line-height: 1.7; margin: 0; }
.tv-contact-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); gap: 24px; align-items: start; }
.tv-contact-details,
.tv-contact-form { background: #fff; border: 1px solid var(--tv-line); border-radius: 18px; padding: clamp(20px, 3vw, 32px); box-shadow: 0 10px 28px rgba(17,37,80,.06); }
.tv-contact-details h2,
.tv-contact-form h2 { color: var(--tv-navy); margin-top: 0; }
.tv-contact-details a { color: var(--tv-navy); font-weight: 700; text-decoration: none; }
.tv-contact-form .tv-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.tv-contact-form label { display: block; font-weight: 700; margin: 0 0 7px; color: var(--tv-ink); }
.tv-contact-form .tv-field { margin-bottom: 16px; }
.tv-contact-form textarea { min-height: 160px; resize: vertical; }
.tv-primary-button { border: 0; border-radius: 10px; min-height: 46px; padding: 10px 20px; background: var(--tv-navy); color: #fff; font-weight: 700; cursor: pointer; }
.tv-primary-button:hover,.tv-primary-button:focus-visible { background: #0d35a6; outline: 3px solid rgba(7,29,114,.2); }
.tv-form-error { display: block; color: #b42318; font-size: 14px; margin-top: 5px; }
.tv-alert { border-radius: 10px; padding: 12px 14px; margin: 0 0 18px; background: #ecfdf3; color: #067647; }

html[dir="rtl"] .tv-account-page,
html[dir="rtl"] .tv-editorial-page { text-align: right; }
html[dir="rtl"] .tv-account-page .notification { border-inline-start: 1px solid var(--tv-line); border-inline-end: 4px solid var(--tv-navy); }
html[dir="rtl"] .tv-account-page .notification1 { border-inline-start: 1px solid var(--tv-line); border-inline-end: 4px solid #a7b3c9; }
html[dir="rtl"] .tv-account-page .notification-detils { padding-inline-start: 0; padding-inline-end: 14px; }

@media (max-width: 900px) {
  .tv-account-page .header-frame1,
  .tv-contact-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .tv-account-page,
  .tv-editorial-page { padding: 30px 16px; }
  .tv-account-page .frame-title,
  .tv-account-page .header-content { padding: 18px; }
  .tv-account-page .notification,
  .tv-account-page .notification1 { align-items: flex-start; }
  .tv-account-page .notification-img,
  .tv-account-page .notification-img img { width: 48px; height: 48px; }
  .tv-account-page .popupNotifications1 { width: calc(100vw - 24px); }
  .tv-about-grid,
  .tv-contact-form .tv-form-grid { grid-template-columns: 1fr; }
}
