/* Travel Transfer public landing - isolated from core.css */
body.tt-home { --tt-ink:#14213c; --tt-muted:#63708a; --tt-blue:#315efb; --tt-line:#e6ebf4; background:#f8faff; }
body.tt-home main > .container-fluid { padding:0; }
body.tt-home .navbar { background:rgba(255,255,255,.94); border-bottom:1px solid #edf0f7; box-shadow:0 5px 28px rgba(27,43,78,.045); }
body.tt-home .navbar .nav-link { font-size:.88rem; font-weight:600; }
body.tt-home .navbar .nav-link:hover { color:#315efb!important; }
.tt-landing { overflow:hidden; width:100%; font-family:inherit; color:var(--tt-ink); line-height:1.6; }
.tt-landing *, .tt-landing *::before, .tt-landing *::after { box-sizing:border-box; }
.tt-landing a { text-decoration:none; }
.tt-landing .tt-container { width:min(1180px,calc(100% - 48px)); margin:0 auto; }
.tt-landing .tt-kicker { display:inline-flex; align-items:center; gap:9px; text-transform:uppercase; letter-spacing:.12em; color:#3565ed; font-size:.72rem; font-weight:800; }
.tt-landing .tt-kicker::before { content:''; background:#4b74ff; height:7px; width:7px; border-radius:50%; box-shadow:0 0 0 5px #e8eeff; }
.tt-landing h1, .tt-landing h2, .tt-landing h3, .tt-landing h4 { letter-spacing:-.035em; font-family:inherit; line-height:1.11; color:inherit; }
.tt-landing h2 { font-size:clamp(2rem,3.5vw,3rem); font-weight:800; margin:12px 0 18px; }
.tt-landing p { margin:0; color:var(--tt-muted); }
.tt-landing .tt-lead { font-size:clamp(1rem,1.5vw,1.13rem); max-width:620px; line-height:1.8; }
.tt-landing .tt-btn { display:inline-flex; align-items:center; justify-content:center; gap:11px; min-height:52px; padding:13px 22px; border:1px solid transparent; border-radius:13px; font-size:.91rem; font-weight:750; transition:transform .2s,box-shadow .2s,background .2s,border-color .2s; cursor:pointer; text-align:center; }
.tt-landing .tt-btn:hover { transform:translateY(-2px); }
.tt-landing .tt-btn:focus-visible, .tt-landing a:focus-visible, .tt-landing summary:focus-visible, .tt-landing input:focus-visible, .tt-landing textarea:focus-visible { outline:3px solid #90adff; outline-offset:3px; }
.tt-landing .tt-btn-primary { color:white; background:#315efb; box-shadow:0 15px 28px rgba(49,94,251,.19); }
.tt-landing .tt-btn-primary:hover { color:white; background:#234ee5; box-shadow:0 18px 34px rgba(49,94,251,.26); }
.tt-landing .tt-btn-ghost { color:#24334c; background:white; border-color:#e0e5ef; }
.tt-landing .tt-btn-ghost:hover { color:#315efb; border-color:#bccbfa; background:#fafbff; }
.tt-landing .tt-hero { position:relative; isolation:isolate; padding:106px 0 94px; background:radial-gradient(ellipse at 92% 12%,#dfebff 0,transparent 44%),linear-gradient(125deg,#f9fbff 0%,#f1f5ff 72%,#f8fbff 100%); }
.tt-landing .tt-hero::after { content:''; position:absolute; inset:auto 0 0; height:90px; pointer-events:none; background:linear-gradient(transparent,rgba(255,255,255,.6)); z-index:-1; }
.tt-landing .tt-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.03fr); align-items:center; gap:52px; }
.tt-landing .tt-pill { display:inline-flex; align-items:center; gap:8px; padding:9px 14px; border:1px solid #dbe5ff; background:#eff4ff; border-radius:99px; color:#3158bc; font-size:.75rem; font-weight:750; margin-bottom:23px; }
.tt-landing .tt-pill i { font-size:.8rem; }
.tt-landing .tt-hero h1 { font-size:clamp(2.6rem,4.5vw,4.65rem); line-height:1.07; font-weight:850; letter-spacing:-.055em; margin:0 0 25px; }
.tt-landing .tt-hero h1 span { color:#315efb; }
.tt-landing .tt-hero-copy { font-size:1.04rem; max-width:520px; line-height:1.86; }
.tt-landing .tt-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin:30px 0 31px; }
.tt-landing .tt-hero-notes { display:flex; flex-wrap:wrap; gap:10px 20px; font-size:.81rem; font-weight:650; color:#596987; }
.tt-landing .tt-hero-notes span { display:flex; align-items:center; gap:8px; }
.tt-landing .tt-hero-notes i { color:#159c87; }
.tt-landing .tt-preview-wrap { min-width:0; position:relative; padding:12px; }
.tt-landing .tt-preview-wrap::before { content:''; z-index:-1; position:absolute; inset:2% -5% -4% 3%; background:linear-gradient(125deg,#d2e2ff,#e2f0ff); border-radius:50px; transform:rotate(-5deg); filter:blur(1px); }
.tt-landing .tt-dash { overflow:hidden; background:white; border:1px solid #dee6f6; border-radius:24px; box-shadow:0 30px 74px rgba(32,56,101,.18); }
.tt-landing .tt-dash-top { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:17px 20px; border-bottom:1px solid #edf0f7; }
.tt-landing .tt-dash-brand { display:flex; align-items:center; gap:9px; font-size:.82rem; font-weight:850; }
.tt-landing .tt-dash-logo { display:grid; place-items:center; width:29px; height:29px; border-radius:9px; color:white; background:#315efb; }
.tt-landing .tt-dash-dots { display:flex; gap:5px; }
.tt-landing .tt-dash-dots b { width:7px; height:7px; border-radius:50%; background:#dbe2f0; }
.tt-landing .tt-dash-content { padding:21px; }
.tt-landing .tt-dash-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:15px; margin-bottom:19px; }
.tt-landing .tt-dash-heading small { color:#96a1b3; font-size:.7rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.tt-landing .tt-dash-heading strong { display:block; margin-top:2px; font-size:1.08rem; letter-spacing:-.02em; }
.tt-landing .tt-dash-chip { color:#327a67; background:#e7f7ef; border:1px solid #c9eddb; font-size:.68rem; font-weight:800; border-radius:30px; padding:6px 10px; white-space:nowrap; }
.tt-landing .tt-dash-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-bottom:17px; }
.tt-landing .tt-metric { border-radius:13px; border:1px solid #e9edf5; padding:13px 11px; min-width:0; background:#fbfcff; }
.tt-landing .tt-metric i { font-size:1rem; color:#315efb; }
.tt-landing .tt-metric span { display:block; color:#7a869c; font-size:.67rem; margin:7px 0 2px; }
.tt-landing .tt-metric strong { font-size:.76rem; font-weight:800; display:block; }
.tt-landing .tt-dash-table { border:1px solid #e9edf5; overflow:hidden; border-radius:14px; }
.tt-landing .tt-table-head { padding:12px 13px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid #e9edf5; font-weight:800; font-size:.8rem; }
.tt-landing .tt-table-head span { color:#7c89a0; font-size:.68rem; font-weight:650; }
.tt-landing .tt-trip { display:grid; align-items:center; grid-template-columns:36px minmax(0,1fr) auto; gap:10px; padding:12px; }
.tt-landing .tt-trip + .tt-trip { border-top:1px solid #eff2f7; }
.tt-landing .tt-trip-icon { display:grid; place-items:center; background:#edf3ff; color:#406aec; width:34px; height:34px; border-radius:10px; font-size:.9rem; }
.tt-landing .tt-trip strong { display:block; font-size:.75rem; line-height:1.3; }
.tt-landing .tt-trip small { display:block; font-size:.67rem; color:#96a1b3; margin-top:3px; }
.tt-landing .tt-status { white-space:nowrap; padding:5px 8px; border-radius:30px; font-size:.64rem; background:#eaf7f2; color:#218464; font-weight:800; }
.tt-landing .tt-status-blue { background:#ebefff; color:#4c64cd; }
.tt-landing .tt-preview-caption { position:absolute; bottom:-18px; right:20px; color:#72809a; font-size:.67rem; padding:8px 12px; background:white; box-shadow:0 10px 28px #d4dded80; border:1px solid #edf0f5; border-radius:8px; }
.tt-landing .tt-capabilities { padding:29px 0; border-bottom:1px solid #edf0f5; background:white; }
.tt-landing .tt-cap-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; }
.tt-landing .tt-cap-item { display:flex; align-items:center; justify-content:center; gap:12px; padding:12px 20px; color:#46536c; font-size:.84rem; font-weight:760; }
.tt-landing .tt-cap-item + .tt-cap-item { border-left:1px solid #e9edf4; }
.tt-landing .tt-cap-item i { display:grid; place-items:center; flex:none; width:37px; height:37px; color:#315efb; background:#edf2ff; border-radius:12px; }
.tt-landing .tt-section { padding:100px 0; background:white; }
.tt-landing .tt-section-soft { background:#f7f9fd; }
.tt-landing .tt-section-head { max-width:730px; margin-bottom:38px; }
.tt-landing .tt-section-head p { font-size:1rem; }
.tt-landing .tt-feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.tt-landing .tt-feature { background:white; border:1px solid #e8edf5; border-radius:19px; padding:28px; min-width:0; transition:transform .2s,border-color .2s,box-shadow .2s; }
.tt-landing .tt-feature:hover { transform:translateY(-4px); border-color:#cad7ff; box-shadow:0 22px 38px rgba(46,68,123,.075); }
.tt-landing .tt-feature-icon { display:grid; place-items:center; height:49px; width:49px; background:#ecf1ff; border-radius:15px; color:#315efb; margin-bottom:23px; font-size:1.19rem; }
.tt-landing .tt-feature h3 { font-size:1.19rem; margin:0 0 11px; font-weight:800; }
.tt-landing .tt-feature p { font-size:.9rem; line-height:1.75; }
.tt-landing .tt-flow-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:35px; }
.tt-landing .tt-step { position:relative; padding:27px; background:white; border:1px solid #e8edf5; border-radius:18px; min-width:0; }
.tt-landing .tt-step-number { font-size:.72rem; font-weight:850; color:#416bf2; border:1px solid #dbe5ff; background:#edf3ff; border-radius:99px; padding:6px 11px; display:inline-block; margin-bottom:20px; }
.tt-landing .tt-step h3 { font-size:1.14rem; margin-bottom:9px; font-weight:800; }
.tt-landing .tt-step p { font-size:.87rem; line-height:1.75; }
.tt-landing .tt-step-arrow { position:absolute; right:-25px; top:50%; display:grid; place-items:center; background:#f7f9fd; border:1px solid #e8edf5; color:#7183a7; border-radius:50%; height:34px; width:34px; z-index:2; }
.tt-landing .tt-integration { color:white; position:relative; padding:95px 0; background:radial-gradient(ellipse at 80% 25%,rgba(55,110,226,.35),transparent 49%),#0e1b39; }
.tt-landing .tt-integration-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); gap:90px; align-items:center; }
.tt-landing .tt-integration .tt-kicker { color:#a9bdff; }
.tt-landing .tt-integration .tt-kicker::before { background:#8aaaef; box-shadow:0 0 0 5px #203457; }
.tt-landing .tt-integration h2 { color:white; margin-bottom:22px; }
.tt-landing .tt-integration p { color:#b5c2dd; line-height:1.8; }
.tt-landing .tt-integration ul { margin:26px 0 30px; padding:0; list-style:none; display:grid; gap:13px; }
.tt-landing .tt-integration li { font-size:.91rem; color:#dce6fb; display:flex; gap:11px; }
.tt-landing .tt-integration li i { color:#61dac5; padding-top:5px; }
.tt-landing .tt-btn-light { background:white; color:#1d346d; }
.tt-landing .tt-btn-light:hover { color:#315efb; background:#f4f7ff; }
.tt-landing .tt-sync-panel { border:1px solid #324466; border-radius:22px; overflow:hidden; padding:27px; background:rgba(255,255,255,.055); box-shadow:0 28px 60px rgba(0,0,0,.15); }
.tt-landing .tt-sync-title { font-size:.8rem; color:#d9e4ff; font-weight:800; display:flex; align-items:center; justify-content:space-between; padding-bottom:19px; border-bottom:1px solid #304363; }
.tt-landing .tt-sync-title span { font-size:.7rem; color:#9fb1d4; font-weight:600; }
.tt-landing .tt-sync-line { display:flex; align-items:center; gap:12px; padding:19px 0 0; font-size:.86rem; color:#e6ecfa; }
.tt-landing .tt-sync-circle { display:grid; place-items:center; flex:none; height:34px; width:34px; border-radius:11px; background:#234b56; color:#6be5cc; }
.tt-landing .tt-sync-content { flex:1; min-width:0; }
.tt-landing .tt-sync-content strong { display:block; font-size:.85rem; }
.tt-landing .tt-sync-content small { display:block; margin-top:3px; color:#a7b7d5; }
.tt-landing .tt-sync-check { color:#7ce4be; }
.tt-landing .tt-link-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
.tt-landing .tt-module { background:#fff; display:flex; gap:13px; align-items:center; padding:22px 20px; border:1px solid #e8edf5; border-radius:16px; color:#172746; font-weight:800; font-size:.87rem; transition:box-shadow .2s,transform .2s; }
.tt-landing .tt-module:hover { transform:translateY(-3px); box-shadow:0 12px 26px rgba(46,68,123,.08); color:#315efb; }
.tt-landing .tt-module i:first-child { color:#315efb; font-size:1.1rem; }
.tt-landing .tt-module i:last-child { color:#99a6ba; margin-left:auto; font-size:.8rem; }
.tt-landing .tt-demo { background:radial-gradient(ellipse at 90% 20%,#e8efff,transparent 60%),#f8faff; padding:104px 0; }
.tt-landing .tt-demo-grid { display:grid; grid-template-columns:minmax(0,.94fr) minmax(0,1fr); gap:80px; align-items:start; }
.tt-landing .tt-demo-copy { padding-top:20px; }
.tt-landing .tt-demo-perks { list-style:none; margin:29px 0; padding:0; display:grid; gap:14px; }
.tt-landing .tt-demo-perks li { display:flex; gap:12px; color:#42516f; font-size:.91rem; }
.tt-landing .tt-demo-perks i { color:#16a58d; padding-top:5px; }
.tt-landing .tt-demo-note { font-size:.87rem; }
.tt-landing .tt-form-card { background:white; border:1px solid #e5ebf5; border-radius:24px; padding:35px; box-shadow:0 30px 65px rgba(37,62,106,.095); min-width:0; }
.tt-landing .tt-form-card h3 { font-size:1.5rem; font-weight:800; margin:0 0 7px; }
.tt-landing .tt-form-card > p { font-size:.86rem; margin-bottom:24px; }
.tt-landing .tt-form-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
.tt-landing .tt-field { margin-bottom:17px; min-width:0; }
.tt-landing .tt-field label { display:block; margin-bottom:7px; color:#34415a; font-size:.82rem; font-weight:750; }
.tt-landing .tt-field input, .tt-landing .tt-field textarea { display:block; width:100%; min-width:0; background:#f9fbff; border:1px solid #dfe6f1; border-radius:11px; padding:12px 14px; color:#1d2b44; font-size:.92rem; transition:border-color .15s,box-shadow .15s; }
.tt-landing .tt-field input::placeholder, .tt-landing .tt-field textarea::placeholder { color:#95a1b4; }
.tt-landing .tt-field input:focus, .tt-landing .tt-field textarea:focus { outline:none; border-color:#7293fa; box-shadow:0 0 0 3px rgba(68,111,242,.12); }
.tt-landing .tt-field textarea { min-height:114px; resize:vertical; }
.tt-landing .tt-field-error { font-size:.79rem; color:#b42318; padding-top:5px; }
.tt-landing .tt-form-card .tt-btn { width:100%; }
.tt-landing .tt-form-card .tt-help { text-align:center; margin-top:13px; font-size:.75rem; }
.tt-landing .tt-hp { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.tt-landing .tt-faq { padding:88px 0; background:white; }
.tt-landing .tt-faq-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:80px; align-items:start; }
.tt-landing .tt-faq details { padding:20px 0; border-bottom:1px solid #e6ebf3; }
.tt-landing .tt-faq summary { cursor:pointer; font-size:1rem; font-weight:770; list-style:none; display:flex; align-items:center; justify-content:space-between; gap:16px; color:#20314d; }
.tt-landing .tt-faq summary::-webkit-details-marker { display:none; }
.tt-landing .tt-faq summary::after { content:'+'; color:#315efb; font-size:1.5rem; line-height:1; font-weight:450; }
.tt-landing .tt-faq details[open] summary::after { content:'−'; }
.tt-landing .tt-faq details p { padding-top:12px; line-height:1.78; font-size:.9rem; }
@media(max-width:1050px) {
 .tt-landing .tt-hero-grid { gap:26px; }
 .tt-landing .tt-hero { padding:77px 0 90px; }
 .tt-landing .tt-hero h1 { font-size:clamp(2.5rem,4.7vw,3.8rem); }
 .tt-landing .tt-demo-grid, .tt-landing .tt-integration-grid { gap:40px; }
 .tt-landing .tt-link-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:800px) {
 .tt-landing .tt-hero-grid, .tt-landing .tt-integration-grid, .tt-landing .tt-demo-grid, .tt-landing .tt-faq-grid { grid-template-columns:1fr; }
 .tt-landing .tt-hero { padding:70px 0 72px; }
 .tt-landing .tt-hero-copy { max-width:620px; }
 .tt-landing .tt-preview-wrap { max-width:640px; width:100%; margin:18px auto 0; }
 .tt-landing .tt-cap-row { grid-template-columns:1fr; }
 .tt-landing .tt-cap-item { justify-content:flex-start; }
 .tt-landing .tt-cap-item + .tt-cap-item { border-left:0; border-top:1px solid #edf0f6; }
 .tt-landing .tt-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .tt-landing .tt-flow-grid { grid-template-columns:1fr; }
 .tt-landing .tt-step-arrow { display:none; }
 .tt-landing .tt-integration, .tt-landing .tt-section, .tt-landing .tt-demo, .tt-landing .tt-faq { padding:74px 0; }
 .tt-landing .tt-demo-copy { padding-top:0; }
 .tt-landing .tt-faq-grid { gap:14px; }
}
@media(max-width:560px) {
 .tt-landing .tt-container { width:calc(100% - 32px); }
 .tt-landing .tt-hero { padding:51px 0 64px; }
 .tt-landing .tt-hero h1 { font-size:clamp(2.45rem,10vw,3.2rem); }
 .tt-landing .tt-hero-copy { font-size:.96rem; }
 .tt-landing .tt-hero-actions { display:grid; grid-template-columns:1fr; }
 .tt-landing .tt-btn { min-height:52px; }
 .tt-landing .tt-preview-wrap { padding:0; margin-top:10px; }
 .tt-landing .tt-preview-wrap::before { inset:4% -5% -3% 3%; }
 .tt-landing .tt-dash { border-radius:16px; }
 .tt-landing .tt-dash-top { padding:12px; }
 .tt-landing .tt-dash-content { padding:12px; }
 .tt-landing .tt-dash-metrics { gap:6px; }
 .tt-landing .tt-metric { padding:10px 7px; }
 .tt-landing .tt-metric strong { font-size:.65rem; }
 .tt-landing .tt-metric span { font-size:.61rem; }
 .tt-landing .tt-dash-heading strong { font-size:.91rem; }
 .tt-landing .tt-trip { grid-template-columns:28px minmax(0,1fr) auto; gap:6px; padding:10px 7px; }
 .tt-landing .tt-trip-icon { width:27px; height:27px; }
 .tt-landing .tt-trip small { font-size:.57rem; }
 .tt-landing .tt-trip strong { font-size:.65rem; }
 .tt-landing .tt-status { font-size:.57rem; padding:4px 6px; }
 .tt-landing .tt-preview-caption { bottom:-25px; right:6px; }
 .tt-landing .tt-feature-grid, .tt-landing .tt-link-grid { grid-template-columns:1fr; }
 .tt-landing .tt-feature { padding:24px; }
 .tt-landing .tt-section,.tt-landing .tt-integration,.tt-landing .tt-demo,.tt-landing .tt-faq { padding:64px 0; }
 .tt-landing .tt-form-card { padding:25px 20px; border-radius:19px; }
 .tt-landing .tt-form-row { grid-template-columns:1fr; gap:0; }
 .tt-landing h2 { font-size:2rem; }
}
@media(prefers-reduced-motion:reduce) {
 .tt-landing .tt-btn,.tt-landing .tt-feature,.tt-landing .tt-module { transition:none; }
 .tt-landing .tt-btn:hover,.tt-landing .tt-feature:hover,.tt-landing .tt-module:hover { transform:none; }
}

/* Mobile navigation: navbar-dark supplies a white icon on our white landing header.
   Render explicit dark strokes and an obvious tap target without changing global pages. */
@media (max-width: 991.98px) {
  body.tt-home .navbar > .container-fluid {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    min-width: 0;
  }
  body.tt-home .navbar .navbar-brand {
    flex: 0 1 auto;
    margin-right: 8px;
  }
  body.tt-home .navbar #menuToggle.navbar-toggler {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex: 0 0 auto;
    width: auto;
    min-width: 89px;
    height: 44px;
    margin-left: auto !important;
    padding: 0 12px;
    border: 1px solid #d1ddf8;
    border-radius: 12px;
    background: #ecf2ff;
    color: #183b79;
    font-size: .83rem;
    font-weight: 800;
    line-height: 1;
    box-shadow: 0 3px 12px rgba(30, 62, 116, .075);
  }
  body.tt-home .navbar #menuToggle .navbar-toggler-icon {
    display: block;
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    background-image:
      linear-gradient(#183b79, #183b79),
      linear-gradient(#183b79, #183b79),
      linear-gradient(#183b79, #183b79);
    background-position: center 5px, center 10px, center 15px;
    background-size: 20px 2px, 20px 2px, 20px 2px;
    background-repeat: no-repeat;
    opacity: 1;
  }
  body.tt-home .navbar #menuToggle::after { content: "Menü"; }
  body.tt-home .navbar #menuToggle:hover { background: #dfeaff; border-color: #aec4f4; }
  body.tt-home .navbar #menuToggle:focus-visible {
    outline: 3px solid #5f85fd;
    outline-offset: 3px;
  }
  /* The mobile drawer/overlay must sit above the fixed navbar when opened. */
  body.tt-home #sideMenu {
    z-index: 1090;
    width: min(320px, calc(100vw - 48px));
    max-width: 100%;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  body.tt-home #overlay { z-index: 1085; }
}
