/* ==========================================================================
   Görev Yönetimi tanıtım sayfası (urunler/gorev-yonetimi.php)
   Tasarım dili: time.fyi esintili — 1080px hairline çerçeve, Geist + Geist Mono,
   mercan mono üst başlıklar, siyah/gri hap düğmeler, pastel demo panelleri.
   Tüm kurallar .gv altında; sitenin styles.css'ine sızmaz.
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=Geist+Mono:wght@400;500&display=swap');

.gv {
    --ink: #141414;
    --ink-2: rgba(20, 20, 20, .62);
    --ink-3: rgba(20, 20, 20, .42);
    --line: rgba(20, 20, 20, .08);
    --line-2: rgba(20, 20, 20, .14);
    --soft: #f4f4f3;
    --coral: #e8604c;
    --peach: #fbf0e8;
    --cream: #faf6ea;
    --lav: #f1edfb;
    --sky: #edf2fb;
    --mint: #edf5ef;
    /* blok renkleri: yumuşak zemin + ray + koyu yazı (panelin randevu katmanıyla aynı mantık) */
    --b-blue-bg: #dfe8fb; --b-blue-r: #6d8fe0; --b-blue-t: #2c4787;
    --b-lav-bg: #e8e2f9;  --b-lav-r: #8b76d6;  --b-lav-t: #45368a;
    --b-mint-bg: #dcefe1; --b-mint-r: #5fae73; --b-mint-t: #2c6639;
    --b-peach-bg: #fbe3d8; --b-peach-r: #e0876a; --b-peach-t: #86391f;
    --b-sand-bg: #f8edcf; --b-sand-r: #d6a53a; --b-sand-t: #72540f;
    --sans: 'Geist', 'Inter', ui-sans-serif, system-ui, -apple-system, sans-serif;
    --mono: 'Geist Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

    position: relative;
    background: #fff;
    color: var(--ink);
    font-family: var(--sans);
    font-size: 16px;
    line-height: 1.5;
    overflow-x: clip;
    padding-top: 64px; /* sabit navbar */
    -webkit-font-smoothing: antialiased;
}
.gv *, .gv *::before, .gv *::after { box-sizing: border-box; }
.gv h1, .gv h2, .gv h3, .gv h4, .gv p { margin: 0; font-family: var(--sans); color: inherit; }
.gv a { color: inherit; }
.gv button { font-family: inherit; }
.gv kbd, .gv .gv-mono { font-family: var(--mono); }

/* 1080px dikey raylar (sayfa boyu) */
.gv-rails {
    pointer-events: none; position: absolute; top: 0; bottom: 0; left: 50%;
    width: min(1080px, 100%); transform: translateX(-50%);
    border-left: 1px solid var(--line); border-right: 1px solid var(--line); z-index: 5;
}
.gv-sec { position: relative; border-top: 1px solid var(--line); }
.gv-in { max-width: 1080px; margin: 0 auto; position: relative; }
.gv-pad { padding: 88px 40px; }

/* Üst başlık (mercan mono) + bölüm başlığı */
.gv-eyebrow {
    display: block; font-family: var(--mono); font-size: 12px; letter-spacing: .08em;
    text-transform: uppercase; color: var(--coral); margin-bottom: 18px;
}
.gv-head { text-align: center; max-width: 720px; margin: 0 auto; padding: 88px 24px 56px; }
.gv-head h2, .gv-h2 {
    font-size: clamp(32px, 4.6vw, 48px); line-height: 1.06; letter-spacing: -.035em; font-weight: 600;
}
.gv-head p, .gv .gv-lead { color: var(--ink-2); font-size: 18px; line-height: 1.55; margin-top: 16px; }

/* Düğmeler */
.gv-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    height: 46px; padding: 0 22px; border-radius: 999px; font-size: 15px; font-weight: 600;
    text-decoration: none !important; border: 0; cursor: pointer; transition: transform .15s ease, background .15s ease;
    white-space: nowrap;
}
.gv-btn:active { transform: scale(.98); }
.gv-btn-dark { background: var(--ink); color: #fff !important; }
.gv-btn-dark:hover { background: #2a2a2a; }
.gv-btn-soft { background: #efefee; color: var(--ink) !important; }
.gv-btn-soft:hover { background: #e6e6e4; }
.gv-chip {
    display: inline-flex; align-items: center; height: 22px; padding: 0 8px; border-radius: 6px;
    background: var(--ink); color: #fff; font-family: var(--mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase;
}
.gv-key {
    display: inline-flex; align-items: center; justify-content: center; min-width: 26px; height: 26px; padding: 0 6px;
    border-radius: 7px; border: 1px solid var(--line-2); background: #fff; font-family: var(--mono); font-size: 11px;
    color: var(--ink); box-shadow: 0 1px 0 rgba(20,20,20,.08); flex-shrink: 0;
}

/* --------------------------------------------------------------------------
   HERO
   -------------------------------------------------------------------------- */
.gv-hero { padding: 80px 40px 72px; }
.gv-hero h1 {
    font-size: clamp(40px, 6.6vw, 70px); line-height: 1.04; letter-spacing: -.05em; font-weight: 600;
    max-width: 1000px;
}
.gv-ill {
    display: inline-flex; width: .92em; height: .92em; vertical-align: -.1em; margin: 0 .06em;
    border-radius: .2em; transform: rotate(var(--r, -4deg)); transition: transform .3s ease;
}
.gv-ill svg { width: 100%; height: 100%; display: block; }
.gv-hero h1:hover .gv-ill { transform: rotate(0deg) scale(1.04); }
.gv-hero-alt { display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: end; margin-top: 44px; }
.gv-hero-alt p { color: var(--ink-2); font-size: 18px; line-height: 1.6; max-width: 540px; }
.gv-hero-cta { display: flex; flex-direction: column; gap: 10px; min-width: 230px; }
.gv-hero-cta small { text-align: center; color: var(--ink-3); font-size: 13px; }

/* "Deneyin" şeridi */
.gv-try { display: flex; align-items: center; justify-content: center; gap: 12px; padding: 14px 20px; color: var(--ink-2); font-size: 14px; text-align: center; flex-wrap: wrap; }

/* --------------------------------------------------------------------------
   Uygulama penceresi (canlı demo)
   -------------------------------------------------------------------------- */
.gv-app { border-top: 1px solid var(--line); background: #fff; }
.gv-win-bar { display: flex; align-items: center; gap: 7px; height: 36px; padding: 0 14px; border-bottom: 1px solid var(--line); position: relative; }
.gv-win-bar i { width: 11px; height: 11px; border-radius: 50%; background: #ec6a5e; display: block; }
.gv-win-bar i:nth-child(2) { background: #f4bf4f; } .gv-win-bar i:nth-child(3) { background: #61c554; }
.gv-win-bar span { position: absolute; left: 50%; transform: translateX(-50%); font-size: 12px; color: var(--ink-3); font-family: var(--mono); }
.gv-app-body { display: grid; grid-template-columns: 236px minmax(0, 1fr); min-height: 560px; }

.gv-side { border-right: 1px solid var(--line); padding: 18px 14px; font-size: 14px; }
.gv-side h4 { font-size: 13px; font-weight: 600; margin: 4px 6px 8px; display: flex; justify-content: space-between; align-items: center; }
.gv-side h4 small { font-weight: 500; color: var(--ink-3); font-size: 12px; }
.gv-todo { display: flex; align-items: flex-start; gap: 9px; padding: 6px; border-radius: 8px; cursor: pointer; user-select: none; }
.gv-todo:hover { background: var(--soft); }
.gv-todo .cb { width: 16px; height: 16px; border-radius: 50%; border: 1.5px solid rgba(20,20,20,.3); flex-shrink: 0; margin-top: 2px; display: grid; place-items: center; transition: all .15s; }
.gv-todo.is-done .cb { background: var(--coral); border-color: var(--coral); }
.gv-todo.is-done .cb::after { content: ''; width: 7px; height: 4px; border-left: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(-45deg) translate(1px, -1px); }
.gv-todo.is-done .t { text-decoration: line-through; color: var(--ink-3); }
.gv-todo .t { line-height: 1.35; }
.gv-todo .m { display: block; font-size: 12px; color: var(--ink-3); }
.gv-todo .m.is-late { color: #c2410c; }
.gv-side-sep { height: 1px; background: var(--line); margin: 14px 6px; }
.gv-tray-item {
    display: flex; align-items: center; gap: 8px; padding: 8px 10px; margin: 6px 0; border: 1px dashed var(--line-2);
    border-radius: 9px; font-size: 13px; background: #fff; cursor: grab; user-select: none; touch-action: none;
}
.gv-tray-item:hover { border-color: rgba(20,20,20,.3); }
.gv-tray-item.is-sel { border-style: solid; border-color: var(--ink); box-shadow: 0 0 0 3px rgba(20,20,20,.06); }
.gv-tray-item .d { margin-left: auto; font-family: var(--mono); font-size: 11px; color: var(--ink-3); }
.gv-tray-hint { font-size: 12px; color: var(--ink-3); margin: 4px 6px 0; line-height: 1.4; }

.gv-main { min-width: 0; display: flex; flex-direction: column; }
.gv-main-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px; border-bottom: 1px solid var(--line); flex-wrap: wrap; }
.gv-main-top h3 { font-size: 18px; font-weight: 600; letter-spacing: -.01em; display: flex; align-items: center; gap: 10px; }
.gv-main-top h3 small { font-size: 13px; font-weight: 500; color: var(--ink-3); }
.gv-seg { display: inline-flex; background: var(--soft); border-radius: 9px; padding: 3px; gap: 2px; }
.gv-seg button { border: 0; background: transparent; font-size: 13px; font-weight: 500; color: var(--ink-2); padding: 6px 11px; border-radius: 7px; cursor: pointer; }
.gv-seg button.is-on { background: #fff; color: var(--ink); box-shadow: 0 1px 2px rgba(20,20,20,.1); }
.gv-daynav { display: inline-flex; gap: 4px; }
.gv-daynav button { border: 1px solid var(--line-2); background: #fff; border-radius: 8px; height: 30px; padding: 0 10px; font-size: 13px; cursor: pointer; }
.gv-daynav button.is-on { background: var(--ink); color: #fff; border-color: var(--ink); }

.gv-view { display: none; flex: 1; min-height: 0; }
.gv-view.is-on { display: flex; flex-direction: column; }

/* Doğal dil kutusu */
.gv-nl { padding: 14px 18px 10px; }
.gv-nl-box { display: flex; align-items: center; gap: 10px; border: 1px solid var(--line-2); border-radius: 12px; padding: 6px 6px 6px 12px; background: #fff; transition: border-color .15s, box-shadow .15s; }
.gv-nl-box:focus-within { border-color: rgba(20,20,20,.45); box-shadow: 0 0 0 4px rgba(20,20,20,.05); }
.gv-nl-box input { flex: 1; min-width: 0; border: 0; outline: 0; font: inherit; font-size: 15px; background: transparent; color: var(--ink); padding: 6px 0; }
.gv-nl-box input::placeholder { color: var(--ink-3); }
.gv-nl-box .gv-btn { height: 34px; padding: 0 14px; font-size: 13px; }
.gv-nl-parse { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; min-height: 24px; align-items: center; font-size: 12px; color: var(--ink-3); }
.gv-tok { display: inline-flex; align-items: center; gap: 5px; height: 24px; padding: 0 8px; border-radius: 6px; font-size: 12px; font-weight: 500; }
.gv-tok.p { background: var(--b-lav-bg); color: var(--b-lav-t); }
.gv-tok.d { background: var(--b-sand-bg); color: var(--b-sand-t); }
.gv-tok.h { background: var(--b-peach-bg); color: var(--b-peach-t); }
.gv-tok.s { background: var(--b-mint-bg); color: var(--b-mint-t); }
.gv-tok.w { background: #fde2dd; color: #9f2d1c; }
.gv-free { display: inline-flex; align-items: center; gap: 4px; }
.gv-free button { border: 1px solid var(--line-2); background: #fff; border-radius: 6px; height: 24px; padding: 0 7px; font-family: var(--mono); font-size: 11px; cursor: pointer; color: var(--ink); }
.gv-free button:hover { background: var(--ink); color: #fff; border-color: var(--ink); }
.gv-examples { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 2px; }
.gv-examples button { border: 1px solid var(--line); background: var(--soft); border-radius: 999px; font-size: 12px; padding: 4px 10px; cursor: pointer; color: var(--ink-2); }
.gv-examples button:hover { color: var(--ink); border-color: var(--line-2); }

/* Kişi × saat ızgarası */
.gv-tl-scroll { overflow-x: auto; overscroll-behavior-x: contain; flex: 1; -webkit-overflow-scrolling: touch; }
.gv-tl { --hours: 10; --lab: 120px; min-width: 700px; padding: 4px 18px 18px; position: relative; }
.gv-tl-hours { display: grid; grid-template-columns: var(--lab) repeat(var(--hours), 1fr); font-family: var(--mono); font-size: 11px; color: var(--ink-3); height: 26px; align-items: end; }
.gv-tl-hours span { padding-left: 4px; border-left: 1px solid transparent; }
.gv-tl-row { display: grid; grid-template-columns: var(--lab) 1fr; min-height: 58px; border-top: 1px solid var(--line); }
.gv-tl-row:last-child { border-bottom: 1px solid var(--line); }
.gv-tl-who { display: flex; align-items: center; gap: 9px; font-size: 13px; font-weight: 500; padding-right: 8px; min-width: 0; }
.gv-tl-who small { display: block; font-size: 11px; color: var(--ink-3); font-weight: 400; }
.gv-av { width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; font-size: 11px; font-weight: 600; flex-shrink: 0; }
.gv-tl-lane {
    position: relative; cursor: copy;
    background-image: linear-gradient(to right, var(--line) 1px, transparent 1px);
    background-size: calc(100% / var(--hours)) 100%;
}
.gv-tl-lane:hover { background-color: rgba(20,20,20,.015); }
.gv-tl-lane.is-drop { background-color: rgba(232,96,76,.06); }
.gv-tl-lane.is-off { cursor: not-allowed; background-image: repeating-linear-gradient(135deg, rgba(20,20,20,.05) 0 6px, transparent 6px 12px); }
.gv-tl-off { position: absolute; inset: 0; display: flex; align-items: center; padding-left: 14px; font-size: 12px; color: var(--ink-3); font-weight: 500; }
.gv-blk {
    position: absolute; top: 7px; bottom: 7px; border-radius: 7px; padding: 5px 8px 5px 10px;
    font-size: 12px; line-height: 1.25; overflow: hidden; cursor: pointer;
    background: var(--bg, var(--b-blue-bg)); color: var(--tx, var(--b-blue-t));
    box-shadow: inset 3px 0 0 var(--rl, var(--b-blue-r));
    transition: box-shadow .15s ease, opacity .2s;
}
.gv-blk b { display: block; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gv-blk span { display: block; font-size: 11px; opacity: .8; white-space: nowrap; font-family: var(--mono); }
.gv-blk.c-lav { --bg: var(--b-lav-bg); --tx: var(--b-lav-t); --rl: var(--b-lav-r); }
.gv-blk.c-mint { --bg: var(--b-mint-bg); --tx: var(--b-mint-t); --rl: var(--b-mint-r); }
.gv-blk.c-peach { --bg: var(--b-peach-bg); --tx: var(--b-peach-t); --rl: var(--b-peach-r); }
.gv-blk.c-sand { --bg: var(--b-sand-bg); --tx: var(--b-sand-t); --rl: var(--b-sand-r); }
.gv-blk.c-appt { --bg: #f1f1f0; --tx: rgba(20,20,20,.6); --rl: rgba(20,20,20,.25); background-image: repeating-linear-gradient(135deg, rgba(20,20,20,.04) 0 5px, transparent 5px 10px); cursor: default; }
.gv-blk.is-new { animation: gvPop .45s cubic-bezier(.2,.9,.3,1.3); }
.gv-blk.is-clash { box-shadow: inset 3px 0 0 #d9432b, 0 0 0 1.5px #d9432b; }
@keyframes gvPop { from { transform: scale(.6); opacity: 0; } to { transform: scale(1); opacity: 1; } }
.gv-now { position: absolute; top: 26px; bottom: 18px; width: 0; border-left: 1.5px solid var(--coral); z-index: 2; pointer-events: none; }
.gv-now::before { content: ''; position: absolute; top: -4px; left: -5px; width: 8px; height: 8px; border-radius: 50%; background: var(--coral); }
.gv-toast {
    position: fixed; left: 50%; bottom: 24px; transform: translate(-50%, 12px); background: var(--ink); color: #fff;
    font-size: 13px; padding: 9px 10px 9px 14px; border-radius: 10px; display: flex; align-items: center; gap: 12px;
    opacity: 0; pointer-events: none; transition: all .25s ease; z-index: 60; max-width: calc(100% - 32px); box-shadow: 0 12px 32px -10px rgba(20,20,20,.4);
}
.gv-toast.is-on { opacity: 1; transform: translate(-50%, 0); pointer-events: auto; }
.gv-toast.is-warn { background: #b4331f; }
.gv-toast button { border: 0; background: rgba(255,255,255,.14); color: #fff; font-size: 12px; font-weight: 600; border-radius: 6px; padding: 4px 9px; cursor: pointer; white-space: nowrap; }
.gv-toast kbd { font-size: 10px; opacity: .7; margin-left: 4px; }

/* Pano görünümü (demo) */
.gv-board { display: grid; grid-template-columns: repeat(4, minmax(200px, 1fr)); gap: 12px; padding: 16px 18px; overflow-x: auto; }
.gv-list { background: var(--soft); border-radius: 12px; padding: 10px; min-width: 0; }
.gv-list h5 { margin: 2px 4px 10px; font-size: 12px; font-weight: 600; display: flex; justify-content: space-between; color: var(--ink-2); font-family: var(--sans); }
.gv-card { background: #fff; border: 1px solid var(--line); border-radius: 10px; padding: 10px 11px; margin-bottom: 8px; font-size: 13px; }
.gv-card b { display: block; font-weight: 500; line-height: 1.35; margin-bottom: 8px; }
.gv-card-m { display: flex; align-items: center; gap: 8px; font-size: 11px; color: var(--ink-3); flex-wrap: wrap; }
.gv-card-m .late { color: #c2410c; font-weight: 500; }
.gv-card-m .ava { margin-left: auto; display: flex; }
.gv-card-m .ava .gv-av { width: 20px; height: 20px; font-size: 9px; margin-left: -5px; border: 2px solid #fff; }
.gv-pr { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: #d9432b; }
.gv-pr.m { background: #d6a53a; } .gv-pr.l { background: #9ca3af; }
.gv-bar { height: 4px; background: var(--line); border-radius: 4px; margin-top: 8px; overflow: hidden; }
.gv-bar i { display: block; height: 100%; background: var(--ink); border-radius: 4px; }
.gv-card.is-done b { text-decoration: line-through; color: var(--ink-3); }

/* Tablo görünümü (demo) */
.gv-table-wrap { overflow-x: auto; padding: 8px 18px 18px; }
.gv-table { width: 100%; border-collapse: collapse; font-size: 13px; min-width: 620px; }
.gv-table th { text-align: left; font-weight: 500; color: var(--ink-3); font-size: 12px; padding: 10px 8px; border-bottom: 1px solid var(--line-2); }
.gv-table td { padding: 11px 8px; border-bottom: 1px solid var(--line); vertical-align: middle; }
.gv-st { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; }
.gv-st::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--c, #9ca3af); }

/* İşlerim görünümü (demo) */
.gv-mine { padding: 16px 18px; }
.gv-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 16px; }
.gv-kpi { border: 1px solid var(--line); border-radius: 12px; padding: 12px 14px; }
.gv-kpi small { font-size: 12px; color: var(--ink-3); display: block; }
.gv-kpi b { font-size: 26px; font-weight: 600; letter-spacing: -.03em; }
.gv-kpi.is-alert b { color: #c2410c; }
.gv-mine-tabs { display: flex; gap: 18px; border-bottom: 1px solid var(--line); margin-bottom: 8px; font-size: 13px; overflow-x: auto; }
.gv-mine-tabs span { padding: 8px 0; color: var(--ink-3); white-space: nowrap; }
.gv-mine-tabs span.is-on { color: var(--ink); box-shadow: inset 0 -2px 0 var(--ink); font-weight: 500; }
.gv-mine-grp { font-size: 11px; font-family: var(--mono); text-transform: uppercase; letter-spacing: .06em; color: var(--ink-3); margin: 14px 0 4px; }
.gv-mine-row { display: flex; align-items: center; gap: 10px; padding: 9px 0; border-bottom: 1px solid var(--line); font-size: 13px; }
.gv-mine-row .b { color: var(--ink-3); font-size: 12px; }
.gv-mine-row .r { margin-left: auto; font-size: 12px; color: var(--ink-3); white-space: nowrap; }
.gv-mine-row .r.late { color: #c2410c; }
.gv-dot-new { width: 7px; height: 7px; border-radius: 50%; background: var(--coral); flex-shrink: 0; }

/* --------------------------------------------------------------------------
   Özellik akordeonu + pastel sahne (time.fyi "Plan your week" düzeni)
   -------------------------------------------------------------------------- */
.gv-feat { display: grid; grid-template-columns: 400px minmax(0, 1fr); border-top: 1px solid var(--line); }
.gv-feat.is-rev { grid-template-columns: minmax(0, 1fr) 400px; }
.gv-feat.is-rev .gv-acc { order: 2; border-left: 1px solid var(--line); border-right: 0; }
.gv-acc { border-right: 1px solid var(--line); }
.gv-acc-item { border-bottom: 1px solid var(--line); }
.gv-acc-item:last-child { border-bottom: 0; }
.gv-acc-btn {
    width: 100%; display: flex; align-items: center; gap: 14px; text-align: left; border: 0; background: transparent;
    padding: 20px 24px; cursor: pointer; color: var(--ink-3); font-size: 18px; font-weight: 500; letter-spacing: -.01em;
    transition: color .2s;
}
.gv-acc-btn:hover { color: var(--ink-2); }
.gv-acc-item.is-on .gv-acc-btn { color: var(--ink); padding-bottom: 8px; }
.gv-acc-item .gv-key { color: var(--ink-3); }
.gv-acc-item.is-on .gv-key { color: var(--ink); }
.gv-acc-body { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .3s ease; }
.gv-acc-body > div { overflow: hidden; }
.gv-acc-item.is-on .gv-acc-body { grid-template-rows: 1fr; }
.gv-acc-body p { padding: 0 24px 0 64px; color: var(--ink-2); font-size: 15px; line-height: 1.55; }
.gv-acc-prog { margin: 16px 24px 20px 64px; height: 2px; background: var(--line); border-radius: 2px; overflow: hidden; }
.gv-acc-prog i { display: block; height: 100%; width: 0; background: var(--ink); }
.gv-acc-item.is-on.is-run .gv-acc-prog i { animation: gvProg var(--dur, 7s) linear forwards; }
@keyframes gvProg { to { width: 100%; } }

.gv-stage { position: relative; min-height: 460px; overflow: hidden; display: flex; align-items: center; justify-content: center; padding: 48px 36px; }
.gv-stage.bg-peach { background: var(--peach); }
.gv-stage.bg-lav { background: var(--lav); }
.gv-stage.bg-sky { background: var(--sky); }
.gv-replay {
    position: absolute; top: 16px; right: 16px; display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 12px;
    border-radius: 999px; background: #fff; border: 1px solid var(--line-2); font-size: 12px; font-weight: 500; cursor: pointer; z-index: 3;
}
.gv-stage.is-left .gv-replay { right: auto; left: 16px; }
.gv-scene { display: none; width: 100%; max-width: 520px; }
.gv-scene.is-on { display: block; }
.gv-panel { background: #fff; border-radius: 14px; box-shadow: 0 1px 2px rgba(20,20,20,.06), 0 12px 32px -12px rgba(20,20,20,.18); }

/* Sahne 1: yazarak planla */
.gv-s-input { display: flex; align-items: center; gap: 10px; padding: 12px 14px; font-size: 15px; margin-bottom: 14px; min-height: 50px; }
.gv-s-input .caret { width: 1.5px; height: 18px; background: var(--ink); animation: gvBlink 1s steps(1) infinite; }
@keyframes gvBlink { 50% { opacity: 0; } }
.gv-s-input .txt { display: inline-flex; flex-wrap: wrap; gap: 4px; align-items: center; }
.gv-s-grid { padding: 10px 12px; }
.gv-s-row { display: grid; grid-template-columns: 70px 1fr; align-items: center; height: 42px; border-top: 1px solid var(--line); font-size: 12px; font-weight: 500; }
.gv-s-row:first-child { border-top: 0; }
.gv-s-row .lane { position: relative; height: 100%; background-image: linear-gradient(to right, var(--line) 1px, transparent 1px); background-size: 12.5% 100%; }
.gv-s-row .gv-blk { top: 5px; bottom: 5px; font-size: 11px; padding: 3px 7px 3px 9px; }
.gv-s-hours { display: grid; grid-template-columns: 70px repeat(8, 1fr); font-family: var(--mono); font-size: 10px; color: var(--ink-3); padding: 0 0 4px; }
.gv-scene.is-play .gv-anim-in { animation: gvIn .5s cubic-bezier(.2,.9,.3,1.2) both; animation-delay: var(--d, 0s); }
@keyframes gvIn { from { opacity: 0; transform: translateY(8px) scale(.96); } to { opacity: 1; transform: none; } }
.gv-scene:not(.is-play) .gv-anim-in { opacity: 1; }
[data-gv-yaz-blok] { opacity: 0; }
[data-gv-yaz-blok].is-shown { opacity: 1; animation: gvIn .5s cubic-bezier(.2,.9,.3,1.2) both; }
.gv-blk.is-draft { background: rgba(255,255,255,.7); color: var(--ink); box-shadow: inset 0 0 0 1.5px var(--ink); border-radius: 7px; pointer-events: none; }
.gv-blk.is-draft.is-clash { box-shadow: inset 0 0 0 1.5px #d9432b; color: #9f2d1c; }
.gv-blk.is-mov { cursor: grab; }
.gv-blk.is-dragging { cursor: grabbing; z-index: 5; opacity: .92; box-shadow: inset 3px 0 0 var(--rl, var(--b-blue-r)), 0 10px 24px -8px rgba(20,20,20,.35); transition: none; }
.gv-tl-date-btn { border: 1px solid var(--line-2); background: #fff; border-radius: 6px; font-size: 11px; padding: 2px 8px; margin-left: 4px; cursor: pointer; color: var(--ink); font-weight: 500; }

/* Sahne: boş saatler / izin */
.gv-s-note { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; padding: 12px 14px; font-size: 13px; color: var(--ink-2); border-top: 1px solid var(--line); }
.gv-s-legend { display: flex; gap: 14px; flex-wrap: wrap; padding: 0 14px 12px; font-size: 11px; color: var(--ink-3); }
.gv-s-legend i { display: inline-block; width: 10px; height: 10px; border-radius: 3px; vertical-align: -1px; margin-right: 5px; }

/* Sahne: planlanmamış tepsisi */
.gv-s-tray { display: flex; gap: 8px; padding: 12px; border-bottom: 1px solid var(--line); flex-wrap: wrap; }
.gv-s-tray .gv-tray-item { margin: 0; flex: 1 1 140px; cursor: default; }
.gv-scene.is-play .gv-fly { animation: gvFly 1.6s cubic-bezier(.6,0,.3,1) .6s both; }
@keyframes gvFly {
    0% { transform: translate(0,0); opacity: 1; }
    70% { transform: translate(var(--fx), var(--fy)) scale(.9); opacity: 1; }
    100% { transform: translate(var(--fx), var(--fy)) scale(.9); opacity: 0; }
}
.gv-scene.is-play .gv-land { animation: gvIn .4s ease 2.05s both; }

/* Sahne: konuşma */
.gv-convo { padding: 0; overflow: hidden; }
.gv-convo-head { display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-bottom: 1px solid var(--line); }
.gv-convo-head b { font-size: 15px; font-weight: 600; }
.gv-convo-head small { display: block; font-size: 12px; color: var(--ink-3); }
.gv-follow { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 10px; border-radius: 8px; border: 1px solid var(--line-2); font-size: 12px; font-weight: 500; white-space: nowrap; }
.gv-follow::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: #3f9a57; }
.gv-msg { display: flex; gap: 10px; padding: 12px 16px; transition: opacity .3s, background .3s; }
.gv-msg .gv-av { width: 30px; height: 30px; }
.gv-msg-b { min-width: 0; flex: 1; font-size: 13.5px; line-height: 1.5; }
.gv-msg-b header { font-size: 12px; color: var(--ink-3); margin-bottom: 2px; }
.gv-msg-b header b { color: var(--ink); font-weight: 600; margin-right: 6px; font-size: 13px; }
.gv-men { background: #e8e2f9; color: #45368a; border-radius: 4px; padding: 0 4px; font-weight: 500; }
.gv-att { display: inline-flex; align-items: center; gap: 10px; margin-top: 8px; border: 1px solid var(--line); border-radius: 10px; padding: 6px 12px 6px 6px; font-size: 12px; }
.gv-att .th { width: 38px; height: 30px; border-radius: 6px; background: linear-gradient(135deg, #fbe3d8, #e8e2f9); }
.gv-att small { display: block; color: var(--ink-3); font-size: 11px; }
.gv-reacts { display: flex; gap: 6px; margin-top: 8px; }
.gv-reacts span { display: inline-flex; align-items: center; gap: 4px; height: 24px; padding: 0 8px; border-radius: 999px; border: 1px solid var(--line-2); font-size: 12px; }
.gv-reacts span.is-mine { background: #eef3fe; border-color: #b9cbf3; }
.gv-thread { display: inline-flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 12px; font-weight: 500; color: #2c4787; }
.gv-thread .gv-av { width: 18px; height: 18px; font-size: 8px; }
.gv-thread small { color: var(--ink-3); font-weight: 400; }
.gv-evt { display: flex; align-items: center; gap: 8px; padding: 8px 16px 8px 56px; font-size: 12px; color: var(--ink-3); transition: opacity .3s, background .3s; }
.gv-evt i { font-size: 11px; }
.gv-compose { margin: 8px 12px 12px; border: 1px solid var(--line-2); border-radius: 10px; padding: 10px 12px; font-size: 13px; color: var(--ink-3); display: flex; align-items: center; gap: 8px; transition: opacity .3s, box-shadow .3s; }
.gv-compose .tools { margin-left: auto; display: flex; gap: 10px; color: var(--ink-3); }
/* odak: seçili madde dışındaki öğeler soluklaşır */
.gv-convo[data-focus] [data-part] { opacity: .28; transition: opacity .3s; }
.gv-convo[data-focus="dizi"] [data-part~="dizi"],
.gv-convo[data-focus="anma"] [data-part~="anma"],
.gv-convo[data-focus="tepki"] [data-part~="tepki"],
.gv-convo[data-focus="takip"] [data-part~="takip"],
.gv-convo[data-focus="gecmis"] [data-part~="gecmis"] { opacity: 1; }
.gv-convo[data-focus="takip"] .gv-follow { box-shadow: 0 0 0 3px rgba(63,154,87,.18); border-color: #3f9a57; }
.gv-convo[data-focus="gecmis"] .gv-evt[data-part] { background: #faf8f2; }

/* --------------------------------------------------------------------------
   3 adım
   -------------------------------------------------------------------------- */
.gv-steps { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
.gv-step { border-right: 1px solid var(--line); display: flex; flex-direction: column; }
.gv-step:last-child { border-right: 0; }
.gv-step-t { padding: 28px 28px 24px; }
.gv-step-t h3 { font-size: 19px; font-weight: 600; letter-spacing: -.01em; display: flex; align-items: center; gap: 12px; margin-bottom: 8px; }
.gv-step-t h3 .n { width: 26px; height: 26px; border-radius: 50%; background: var(--ink); color: #fff; font-size: 13px; display: grid; place-items: center; flex-shrink: 0; }
.gv-step-t p { color: var(--ink-2); font-size: 15px; line-height: 1.55; padding-left: 38px; }
.gv-step-v { flex: 1; min-height: 230px; display: flex; align-items: center; justify-content: center; padding: 28px; border-top: 1px solid var(--line); }
.gv-step-v.bg-sky { background: var(--sky); } .gv-step-v.bg-mint { background: var(--mint); } .gv-step-v.bg-peach { background: var(--peach); }
.gv-mini { width: 100%; max-width: 280px; padding: 12px; font-size: 12px; }
.gv-mini-lists { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.gv-mini-lists div { background: var(--soft); border-radius: 7px; padding: 7px 6px; font-weight: 500; font-size: 11px; color: var(--ink-2); min-height: 64px; }
.gv-mini-lists div i { display: block; height: 14px; border-radius: 4px; background: #fff; border: 1px solid var(--line); margin-top: 6px; }
.gv-mini-btn { margin-top: 10px; display: flex; justify-content: center; }
.gv-mini-btn span { background: var(--ink); color: #fff; border-radius: 999px; padding: 6px 12px; font-size: 11px; font-weight: 600; }
.gv-chk { display: flex; align-items: center; gap: 8px; padding: 7px 2px; border-top: 1px solid var(--line); }
.gv-chk:first-of-type { border-top: 0; }
.gv-chk .cb { width: 14px; height: 14px; border-radius: 4px; border: 1.5px solid rgba(20,20,20,.3); flex-shrink: 0; }
.gv-chk.ok .cb { background: var(--ink); border-color: var(--ink); }
.gv-chk.ok .t { text-decoration: line-through; color: var(--ink-3); }
.gv-chk .gv-av { width: 18px; height: 18px; font-size: 8px; margin-left: auto; }
.gv-chk .dt { font-family: var(--mono); font-size: 10px; color: var(--ink-3); width: 40px; text-align: right; }
.gv-chk .dt.late { color: #c2410c; }
.gv-mini h6 { font-size: 12px; font-weight: 600; margin: 0 0 8px; font-family: var(--sans); }
.gv-mini-kpi { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin-bottom: 10px; }
.gv-mini-kpi div { border: 1px solid var(--line); border-radius: 8px; padding: 6px 8px; font-size: 10px; color: var(--ink-3); }
.gv-mini-kpi b { display: block; font-size: 18px; color: var(--ink); font-weight: 600; }
.gv-mini-kpi .al b { color: #c2410c; }
.gv-mini-notif { display: flex; gap: 8px; align-items: center; background: var(--soft); border-radius: 8px; padding: 8px; font-size: 11px; }
.gv-mini-notif i { color: var(--coral); }

/* --------------------------------------------------------------------------
   Raporlar (yöneticiler)
   -------------------------------------------------------------------------- */
.gv-report { display: grid; grid-template-columns: 380px minmax(0, 1fr); border-top: 1px solid var(--line); }
.gv-report-t { padding: 48px 40px; border-right: 1px solid var(--line); }
.gv-report-t .gv-h2 { font-size: clamp(28px, 3.4vw, 38px); }
.gv-ticks { list-style: none; padding: 0; margin: 24px 0 0; }
.gv-ticks li { position: relative; padding: 10px 0 10px 26px; border-top: 1px solid var(--line); font-size: 15px; color: var(--ink-2); line-height: 1.5; }
.gv-ticks li b { color: var(--ink); font-weight: 600; }
.gv-ticks li::before { content: ''; position: absolute; left: 2px; top: 17px; width: 10px; height: 6px; border-left: 2px solid var(--ink); border-bottom: 2px solid var(--ink); transform: rotate(-45deg); }
.gv-report-v { background: var(--cream); padding: 40px 36px; display: flex; align-items: center; min-width: 0; }
.gv-rep { width: 100%; padding: 18px; }
.gv-rep-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; gap: 10px; flex-wrap: wrap; }
.gv-rep-top b { font-size: 15px; font-weight: 600; }
.gv-rep-kpis { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin-bottom: 14px; }
.gv-rep-kpis div { border: 1px solid var(--line); border-radius: 10px; padding: 9px 10px; min-width: 0; }
.gv-rep-kpis small { display: block; font-size: 10.5px; color: var(--ink-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gv-rep-kpis b { font-size: 20px; font-weight: 600; letter-spacing: -.02em; }
.gv-rep-kpis em { display: block; font-style: normal; font-size: 10.5px; font-family: var(--mono); color: #2c6639; }
.gv-rep-kpis em.down { color: #b4331f; }
.gv-rep-mid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 12px; }
.gv-rep-box { border: 1px solid var(--line); border-radius: 10px; padding: 12px; min-width: 0; }
.gv-rep-box h6 { font-size: 12px; font-weight: 600; margin: 0 0 8px; font-family: var(--sans); }
.gv-rep-box ul { list-style: none; margin: 0; padding: 0; font-size: 12px; color: var(--ink-2); line-height: 1.45; }
.gv-rep-box li { padding: 5px 0 5px 14px; position: relative; border-top: 1px solid var(--line); }
.gv-rep-box li:first-child { border-top: 0; }
.gv-rep-box li::before { content: ''; position: absolute; left: 2px; top: 11px; width: 5px; height: 5px; border-radius: 50%; background: var(--ink); }
.gv-rep-box li.w::before { background: #c2410c; }
.gv-rep-chart svg { width: 100%; height: 120px; display: block; }
.gv-rep-people { margin-top: 12px; width: 100%; border-collapse: collapse; font-size: 12px; }
.gv-rep-people th { text-align: left; font-weight: 500; color: var(--ink-3); font-size: 11px; padding: 6px 4px; border-bottom: 1px solid var(--line-2); }
.gv-rep-people td { padding: 7px 4px; border-bottom: 1px solid var(--line); }
.gv-rep-people td:not(:first-child), .gv-rep-people th:not(:first-child) { text-align: right; font-family: var(--mono); }
.gv-rep-people .who { display: flex; align-items: center; gap: 7px; }
.gv-rep-people .gv-av { width: 20px; height: 20px; font-size: 8px; }

/* --------------------------------------------------------------------------
   Karşılaştırma
   -------------------------------------------------------------------------- */
.gv-cmp-wrap { padding: 0 40px 88px; }
.gv-cmp { width: 100%; border-collapse: collapse; font-size: 15px; }
.gv-cmp th { font-weight: 500; font-size: 13px; color: var(--ink-3); text-align: left; padding: 14px 16px; border-bottom: 1px solid var(--line-2); }
.gv-cmp th.us { color: #fff; background: var(--ink); border-radius: 12px 12px 0 0; font-weight: 600; }
.gv-cmp td { padding: 16px; border-bottom: 1px solid var(--line); vertical-align: top; color: var(--ink-2); line-height: 1.45; }
.gv-cmp td:first-child { color: var(--ink); font-weight: 500; width: 26%; }
.gv-cmp td.us { background: #f7f7f6; color: var(--ink); }
.gv-cmp tr:last-child td.us { border-radius: 0 0 12px 12px; }
.gv-no { color: var(--ink-3); }

/* --------------------------------------------------------------------------
   CRM bandı (siyah panel)
   -------------------------------------------------------------------------- */
.gv-dark { background: #0f0f0f; color: #fff; }
.gv-dark .gv-in { padding: 80px 40px; display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
.gv-dark .gv-h2 { color: #fff; }
.gv-dark .gv-lead { color: rgba(255,255,255,.66); }
.gv-dark-list { display: grid; gap: 0; }
.gv-dark-list div { display: flex; gap: 14px; padding: 16px 0; border-top: 1px solid rgba(255,255,255,.1); }
.gv-dark-list div:first-child { border-top: 0; }
.gv-dark-list i { width: 32px; height: 32px; border-radius: 9px; background: rgba(255,255,255,.08); display: grid; place-items: center; font-size: 13px; flex-shrink: 0; }
.gv-dark-list b { display: block; font-weight: 600; font-size: 15px; margin-bottom: 2px; }
.gv-dark-list span { color: rgba(255,255,255,.62); font-size: 14px; line-height: 1.5; }
.gv-dark .gv-btn-soft { background: #fff; }

/* --------------------------------------------------------------------------
   Detaylar ızgarası
   -------------------------------------------------------------------------- */
.gv-details { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); }
.gv-det { display: flex; gap: 16px; padding: 26px 32px; border-bottom: 1px solid var(--line); }
.gv-det:nth-child(odd) { border-right: 1px solid var(--line); }
.gv-det:nth-last-child(-n+2) { border-bottom: 0; }
.gv-det-ic { width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; flex-shrink: 0; font-size: 15px; color: var(--ink); transform: rotate(-3deg); }
.gv-det:nth-child(4n+1) .gv-det-ic { background: var(--b-lav-bg); }
.gv-det:nth-child(4n+2) .gv-det-ic { background: var(--b-peach-bg); }
.gv-det:nth-child(4n+3) .gv-det-ic { background: var(--b-mint-bg); }
.gv-det:nth-child(4n+4) .gv-det-ic { background: var(--b-blue-bg); }
.gv-det h3 { font-size: 16px; font-weight: 600; margin-bottom: 4px; letter-spacing: -.005em; }
.gv-det p { color: var(--ink-2); font-size: 14.5px; line-height: 1.55; }

/* --------------------------------------------------------------------------
   Fiyat çıpası bandı (config/fiyat_capasi.php) — sayfanın monokrom diline çekilir
   -------------------------------------------------------------------------- */
.gv .ozk-fc { background: #fff; border: 0; padding: 40px; font-family: var(--sans); }
.gv .ozk-fc-ic { max-width: none; }
.gv .ozk-fc-kart { box-shadow: none; border: 1px solid var(--line-2); border-radius: 16px; }
.gv .ozk-fc-kart::before { display: none; }
.gv .ozk-fc-rozet { background: var(--soft); color: var(--ink); font-family: var(--mono); font-weight: 500; font-size: 11px; border-radius: 6px; }
.gv .ozk-fc-tutar strong { font-weight: 600; letter-spacing: -.04em; color: var(--ink); }
.gv .ozk-fc-deger { font-weight: 600; letter-spacing: -.01em; color: var(--ink); }
.gv .ozk-fc-hesap strong { color: var(--ink); }
.gv .ozk-fc-btn { border-radius: 999px; font-weight: 600; }
.gv .ozk-fc-btn-dolu { background: var(--ink); color: #fff; box-shadow: none; }
.gv .ozk-fc-btn-dolu:hover { color: #fff; background: #2a2a2a; }
.gv .ozk-fc-btn-bos { border: 0; background: #efefee; color: var(--ink); }
.gv .ozk-fc-btn-bos:hover { color: var(--ink); background: #e6e6e4; }

/* --------------------------------------------------------------------------
   SSS
   -------------------------------------------------------------------------- */
.gv-faq { display: grid; grid-template-columns: 360px minmax(0, 1fr); }
.gv-faq-t { padding: 56px 40px; border-right: 1px solid var(--line); }
.gv-faq-t .gv-h2 { font-size: clamp(30px, 3.6vw, 40px); }
.gv-faq-t p { color: var(--ink-2); margin-top: 14px; font-size: 15px; }
.gv-faq-t p a { text-decoration: underline; text-underline-offset: 3px; }
.gv-faq-t .sticky { position: sticky; top: 100px; }
.gv-faq-l details { border-bottom: 1px solid var(--line); }
.gv-faq-l details:last-child { border-bottom: 0; }
.gv-faq-l summary {
    list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 18px;
    padding: 22px 32px; font-size: 16px; font-weight: 500;
}
.gv-faq-l summary::-webkit-details-marker { display: none; }
.gv-faq-l summary::after {
    content: '+'; width: 26px; height: 26px; border-radius: 50%; background: var(--soft); display: grid; place-items: center;
    font-size: 17px; font-weight: 400; flex-shrink: 0; transition: transform .2s;
}
.gv-faq-l details[open] summary::after { transform: rotate(45deg); }
.gv-faq-l details p { padding: 0 32px 24px; color: var(--ink-2); font-size: 15px; line-height: 1.65; max-width: 640px; }

/* --------------------------------------------------------------------------
   Son CTA
   -------------------------------------------------------------------------- */
.gv-end { position: relative; text-align: center; padding: 120px 24px; overflow: hidden; }
.gv-end .gv-h2 { font-size: clamp(36px, 5.6vw, 58px); letter-spacing: -.045em; max-width: 700px; margin: 0 auto; }
.gv-end p { color: var(--ink-2); font-size: 17px; margin: 18px auto 30px; }
.gv-end-cta { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }
.gv-float { position: absolute; width: 84px; height: 84px; transition: transform .6s cubic-bezier(.2,.9,.3,1.2); }
.gv-float svg { width: 100%; height: 100%; }
.gv-float.a { left: 7%; top: 16%; transform: rotate(-12deg); }
.gv-float.b { right: 8%; bottom: 18%; transform: rotate(9deg); }
.gv-float.c { right: 13%; top: 14%; width: 60px; height: 60px; transform: rotate(-6deg); }
.gv-float.d { left: 12%; bottom: 14%; width: 60px; height: 60px; transform: rotate(8deg); }
.gv-end:hover .gv-float.a { transform: rotate(-4deg) translateY(-6px); }
.gv-end:hover .gv-float.b { transform: rotate(2deg) translateY(-6px); }

/* --------------------------------------------------------------------------
   Duyarlı
   -------------------------------------------------------------------------- */
@media (max-width: 1080px) {
    .gv-feat, .gv-feat.is-rev { grid-template-columns: 340px minmax(0, 1fr); }
    .gv-feat.is-rev { grid-template-columns: minmax(0, 1fr) 340px; }
    .gv-report { grid-template-columns: 320px minmax(0, 1fr); }
    .gv-rep-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .gv-rep-kpis div:nth-child(n+4) { display: none; }
}
@media (max-width: 900px) {
    .gv-app-body { grid-template-columns: 1fr; }
    .gv-side { display: none; }
    .gv-feat, .gv-feat.is-rev { grid-template-columns: 1fr; }
    .gv-feat.is-rev .gv-acc { order: 0; border-left: 0; }
    .gv-acc { border-right: 0; border-bottom: 1px solid var(--line); }
    .gv-stage { min-height: 380px; padding: 56px 18px 28px; }
    .gv-steps { grid-template-columns: 1fr; }
    .gv-step { border-right: 0; border-bottom: 1px solid var(--line); }
    .gv-step:last-child { border-bottom: 0; }
    .gv-report { grid-template-columns: 1fr; }
    .gv-report-t { border-right: 0; border-bottom: 1px solid var(--line); }
    .gv-dark .gv-in { grid-template-columns: 1fr; gap: 28px; }
    .gv-faq { grid-template-columns: 1fr; }
    .gv-faq-t { border-right: 0; border-bottom: 1px solid var(--line); padding: 48px 24px 32px; }
    .gv-faq-t .sticky { position: static; }
    .gv-float { display: none; }
}
@media (max-width: 760px) {
    .gv { padding-top: 58px; }
    .gv-hero { padding: 48px 16px 40px; }
    .gv-hero h1 { font-size: clamp(34px, 10.4vw, 48px); letter-spacing: -.045em; }
    .gv-hero-alt { grid-template-columns: 1fr; gap: 24px; margin-top: 28px; }
    .gv-hero-alt p { font-size: 16px; }
    .gv-hero-cta { min-width: 0; }
    .gv-head { padding: 64px 16px 36px; }
    .gv-head p, .gv-lead { font-size: 16px; }
    .gv-main-top { padding: 12px; }
    .gv-seg button { padding: 6px 8px; font-size: 12px; }
    .gv-nl { padding: 12px 12px 8px; }
    .gv-tl { padding: 4px 12px 16px 0; --lab: 92px; min-width: 620px; }
    .gv-tl-who, .gv-tl-hours > span:first-child { position: sticky; left: 0; z-index: 4; background: #fff; padding-left: 12px; }
    .gv-tl-who { box-shadow: 1px 0 0 var(--line); }
    .gv-masaustu { display: none; }
    .gv-board { grid-template-columns: repeat(4, 220px); padding: 12px; }
    .gv-mine { padding: 12px; }
    .gv-kpis { grid-template-columns: repeat(2, 1fr); }
    .gv-acc-btn { padding: 18px 16px; font-size: 17px; }
    .gv-acc-body p { padding: 0 16px 0 56px; }
    .gv-acc-prog { margin: 14px 16px 18px 56px; }
    .gv-step-t { padding: 24px 16px 20px; }
    .gv-step-t p { padding-left: 0; }
    .gv-step-v { padding: 24px 16px; }
    .gv-report-t { padding: 40px 16px; }
    .gv-report-v { padding: 24px 12px; }
    .gv-rep { padding: 12px; }
    .gv-rep-mid { grid-template-columns: 1fr; }
    .gv-cmp-wrap { padding: 0 16px 56px; }
    .gv-cmp, .gv-cmp tbody { display: block; font-size: 14px; }
    .gv-cmp thead { display: none; }
    .gv-cmp tr { display: flex; flex-direction: column; border: 1px solid var(--line-2); border-radius: 14px; margin-bottom: 12px; overflow: hidden; }
    .gv-cmp td { border: 0; padding: 8px 14px; width: auto !important; }
    .gv-cmp td:first-child { order: 0; padding-top: 14px; font-size: 15px; font-weight: 600; }
    .gv-cmp td.us { order: 1; background: var(--ink); color: #fff; border-radius: 10px !important; margin: 4px 8px 6px; padding: 10px 12px; }
    .gv-cmp td:nth-child(2) { order: 2; }
    .gv-cmp td:nth-child(3) { order: 3; padding-bottom: 14px; }
    .gv-cmp td[data-l]::before { content: attr(data-l); display: block; font-family: var(--mono); font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-3); margin-bottom: 2px; }
    .gv-cmp td.us::before { color: rgba(255,255,255,.55); }
    .gv-dark .gv-in { padding: 56px 16px; }
    .gv-details { grid-template-columns: 1fr; }
    .gv-det { padding: 22px 16px; }
    .gv-det:nth-child(odd) { border-right: 0; }
    .gv-det:nth-last-child(2) { border-bottom: 1px solid var(--line); }
    .gv .ozk-fc { padding: 24px 16px; }
    .gv-faq-l summary { padding: 18px 16px; font-size: 15px; }
    .gv-faq-l details p { padding: 0 16px 20px; }
    .gv-end { padding: 80px 16px; }
    .gv-try { font-size: 13px; padding: 12px 16px; }
}
@media (prefers-reduced-motion: reduce) {
    .gv *, .gv *::before, .gv *::after { animation-duration: .01ms !important; animation-delay: 0s !important; transition-duration: .01ms !important; }
}
