/* JANFAR AI — readability, layout and contact fixes (loaded last, overrides earlier sheets). */
:root{--muted:#b4c0cf;--label:#bccada}

/* 1. Readable small text: labels ≥12px, body ≥14px, brighter muted colors */
.wordmark small{font-size:10px;color:var(--label)}
.header-index{font-size:11px;color:var(--label)}
.header-contact{font-size:13px;padding:13px 20px}
.chapter-rail{font-size:11px;color:var(--label)}
.hero-topline,.hero-bottom,.chapter-side-note,.hero-stamp small,.hero-prompt small,.preloader p{font-size:11px;color:var(--label)}
.hero-prompt{font-size:12px}
.kicker{font-size:12px;letter-spacing:.16em}
.chapter-number{font-size:12px;color:#cdbfa6}
.signature{font-size:12px}
.film-no,.film-caption>span{font-size:11px}
.film-caption p{font-size:14px;color:var(--muted)}
.gallery-outro,.experience-eyebrow>span:last-child,.worlds-foot{font-size:11px;color:var(--label)}
.capability-id,.capability-line>span:nth-child(3){font-size:12px;color:var(--label)}
.browser-glass small,.browser-glass>span:last-child{font-size:11px}
.world-caption>span,.world-caption small{font-size:11px}
.world-caption p,.visual-panel figcaption small,.sample-standards{font-size:14px;color:var(--muted)}
.visual-panel figcaption span,.sample-standards b{font-size:11px}
.video-screen-overlay span,.video-screen-overlay small,.video-live-indicator,.venue-headline span,.video-category-header span{font-size:11px}
.video-stat small{font-size:12px}
.video-side p,.venue-note p,.office-hint,.office-output-heading p,.office-service-caption p{font-size:14px;color:var(--muted)}
.video-take-info b{font-size:14px}
.office-workspace-kicker,.office-toolbar p,.office-metrics small,.office-pane-label,.paper-topline,.paper-stamp,.office-service-caption span{font-size:11px}
.office-actions button,.office-file-label{font-size:12px}
.office-chart-row,#office-table th{font-size:12px}
#office-table{font-size:13px}
.journey-step span{font-size:12px}
.journey-step p{font-size:15px;color:var(--muted)}
.end-actions>span,.end-foot{font-size:12px;color:var(--label)}
.texa-room-visual>span,.texa-room-visual>small,.texa-brief-panel label{font-size:12px}
.texa-brief-panel>p:not(.kicker),#texa-plan-output{font-size:14px}
.brief-dialog p,#brief-status{font-size:14px}
.brief-dialog label{font-size:12px}
.action-button{font-size:13px}
.hero-content>p{color:#d3dbe4}
.chapter-copy p,.experience-lead,.section-heading>p,.gallery-intro>p{color:#cad4de}

/* 5. Big headlines fit in one screen: cap by viewport height as well as width */
.hero-content h1{font-size:min(clamp(76px,9.4vw,156px),15vh)}
.chapter-copy h2{font-size:min(clamp(80px,9.2vw,150px),14vh);margin:24px 0 26px}
.chapter-copy{padding-top:20px}
.gallery-intro h2,.end-layout h2{font-size:min(clamp(75px,9vw,145px),14vh)}
.experience-title,.section-heading h2{font-size:min(clamp(70px,8.3vw,132px),14vh)}

/* 6. Faster, lighter reveal so headlines are never blurry for long */
.reveal{transform:translate3d(0,30px,0);transition:opacity .6s var(--ease),transform .7s var(--ease)}
.kinetic-title.in-view .kinetic-line{animation-name:janfar-line-enter-soft;animation-duration:.7s}
.kinetic-title.in-view .kinetic-line:nth-child(2){animation-delay:.06s}
.kinetic-title.in-view .kinetic-line:nth-child(3){animation-delay:.12s}
.kinetic-title.in-view .kinetic-line:nth-child(4){animation-delay:.18s}
@keyframes janfar-line-enter-soft{from{opacity:.4;filter:blur(2px);transform:translate3d(-24px,10px,0)}to{opacity:1;filter:blur(0);transform:none}}
/* Less empty scroll between chapters */
.chapter{height:100svh;min-height:700px}
.hero-chapter{height:110svh;min-height:760px}
.chapter-end{height:auto;min-height:100svh}
.chapter-gallery{min-height:0}

/* 2. Service chips under the hero */
.hero-services{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;max-width:640px;padding:0;list-style:none}
.hero-services a{display:inline-block;border:1px solid #a6dff07a;background:#0a1624b0;padding:9px 14px;font-size:13px;font-weight:600;color:#e3f4fb;transition:background .2s,color .2s}
.hero-services a:hover,.hero-services a:focus-visible{background:var(--aqua);color:#05080f}

/* 8. Contact links (rendered from CONTACT in ui.js; hidden until filled) */
.contact-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.contact-links[hidden],.whatsapp-float[hidden]{display:none}
.contact-links a{border:1px solid #a6dff07a;padding:11px 16px;font-size:14px;font-weight:600;color:#e3f4fb}
.contact-links a:hover,.contact-links a:focus-visible{background:var(--aqua);color:#05080f}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:120;display:flex;align-items:center;gap:8px;background:#25d366;color:#04140a;padding:13px 18px;border-radius:999px;font-size:14px;font-weight:700;box-shadow:0 12px 40px #0008}
.whatsapp-float:hover{transform:translateY(-2px)}
.end-foot{position:static;margin-top:70px}
.end-layout{justify-content:flex-start;padding-bottom:40px}

/* Mobile: keep text readable and avoid sideways scroll */
@media(max-width:700px){
 .wordmark small{font-size:8px}
 .header-contact{font-size:11px;padding:10px 12px}
 .hero-topline,.hero-bottom,.chapter-side-note,.hero-stamp small{font-size:10px}
 .kicker{font-size:11px}
 .chapter-number{font-size:11px}
 .hero-content>p,.chapter-copy p,.experience-lead,.section-heading>p,.gallery-intro>p,.end-layout>p{font-size:15px;max-width:100%}
 .signature,.end-actions>span,.end-foot,.worlds-foot,.gallery-outro{font-size:11px}
 .hero-content h1{font-size:clamp(46px,13vw,90px)}
 .chapter-copy h2,.gallery-intro h2,.end-layout h2,.experience-title,.section-heading h2{font-size:clamp(44px,12vw,84px)}
 .venue-headline span,.video-stat small,.office-actions button,.office-file-label{font-size:11px}
 .hero-stamp{display:none}
 .hero-services a{font-size:12px;padding:8px 11px}
 .chapter-side-note{display:none}
 .hero-topline{display:none}
 .hero-layout{padding-top:96px;justify-content:center}
 .hero-content{margin-top:0}
 .video-screen-overlay small{display:none}
 .whatsapp-float{right:14px;bottom:14px;padding:12px 15px}
 .video-side{grid-template-columns:1fr}
 .office-pane-label{flex-wrap:wrap}
 .texa-rooms button{font-size:12px;padding:16px 14px}
}
@media(prefers-reduced-motion:reduce){.kinetic-title.in-view .kinetic-line{animation:none}}

/* v2 — clean, crisp 3D: remove the overlays that blurred the crystals and left a shadow while scrolling */
.scene-photography{display:none!important}
.world-grain{display:none!important}
body:after{display:none}
.world-vignette{background:linear-gradient(90deg,#05080fcc 0%,#05080f55 38%,transparent 62%)!important;opacity:1!important}
.chapter-gallery{background:#05080f}
.film-image img,.world-art img,.visual-panel img{filter:none!important}
.hero-content h1,.chapter-copy h2,.gallery-intro h2,.end-layout h2{text-shadow:none}
.hero-content h1 em,.chapter-copy h2 em,.gallery-intro h2 em,.end-layout h2 em{text-shadow:none}
.kinetic-title em{filter:none}
@keyframes janfar-line-enter-soft{from{opacity:0;transform:translate3d(0,14px,0)}to{opacity:1;transform:none}}
.site-header{backdrop-filter:none;background:#05080fe6}
@media(max-width:700px){.world-vignette{background:linear-gradient(180deg,#05080fb3 0%,#05080f40 45%,#05080fb3 100%)!important}}
