/* Kal's existing Fraunces/Karla and cream/terracotta brand are intentionally retained. */
.travel-page{--accent:#A94A22;--accent-deep:#843817;--travel-max:1280px;overflow-x:clip}
.travel-page *:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.travel-page section[id]{scroll-margin-top:90px}
.travel-header{max-width:var(--travel-max);margin:auto;padding:0 40px;min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.travel-header nav{display:flex;align-items:center;gap:28px;font-size:14px}
.travel-cta{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--accent);color:#fff;padding:14px 22px;border:0;border-radius:12px;font-size:15px;font-weight:700;white-space:nowrap;transition:background .2s,transform .2s}
.travel-cta:hover{background:var(--accent-deep);transform:translateY(-2px)}
.travel-hero{max-width:var(--travel-max);margin:auto;padding:58px 40px 24px;display:grid;grid-template-columns:1.08fr 1fr;gap:42px;align-items:center}
.travel-eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--accent);margin-bottom:22px}
.travel-intro h1{font-size:clamp(35px,3.8vw,53px);font-weight:500;letter-spacing:-.045em;line-height:1.13;margin-bottom:26px}
.travel-intro h1 em{color:var(--accent);font-weight:500;display:inline-block;padding-bottom:5px}
.travel-intro>p:not(.travel-eyebrow){font-size:19px;max-width:370px;color:var(--ink-soft);margin-bottom:30px}
.travel-photo{margin:0;position:relative}.travel-photo img{width:100%;height:455px;object-fit:cover;border-radius:20px}.travel-photo figcaption{font-size:11px;color:var(--ink-soft);margin-top:8px;text-align:right}
.travel-context{max-width:var(--travel-max);margin:25px auto 0;padding:34px 40px 60px;display:flex;justify-content:space-between;gap:30px;font-size:16px;color:var(--ink-soft)}
.travel-context strong{color:var(--ink);font-weight:500}.travel-context ul{display:flex;gap:28px;align-items:center;max-width:600px;font-size:14px}.travel-context li{max-width:160px}
.journey-section,.travel-offer,.travel-faq,.travel-contact,.human-section{max-width:var(--travel-max);margin:auto;padding:80px 40px}
.section-intro{margin-bottom:40px}.section-intro h2,.travel-faq h2,.travel-contact h2,.human-section h2{font-size:clamp(32px,4vw,48px);font-weight:500;letter-spacing:-.035em;line-height:1.12}.section-intro>p{max-width:550px;margin-top:18px;color:var(--ink-soft)}
.motion-demo{border:1px solid var(--line);border-radius:20px;background:#EFE6D6;overflow:hidden;box-shadow:0 24px 60px -40px #5B554650}
.demo-top{display:flex;align-items:center;justify-content:space-between;padding:20px 30px;border-bottom:1px solid #d9ceb9;gap:20px}.demo-brand{font-family:var(--font-display);font-weight:600}.demo-brand>span:first-child{color:var(--accent)}.demo-category{font-family:var(--font-body);font-size:13px;color:var(--ink-soft);font-weight:400;margin-left:15px}.demo-label{font-size:12px;color:var(--ink-soft)}
.demo-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:48px;align-items:center;padding:42px 48px;min-height:410px}.scene-count{color:var(--accent);font-size:14px;font-weight:700;display:block;margin-bottom:18px}.demo-story h3{font-size:32px;line-height:1.16;font-weight:500;letter-spacing:-.025em;margin-bottom:18px}.demo-story>p{font-size:16px;color:var(--ink-soft);min-height:100px;max-width:330px}
.demo-switch{display:flex;gap:4px;margin-top:20px;flex-wrap:wrap}.demo-switch button{font-size:12px;padding:8px 11px;background:transparent;color:var(--ink-soft);border:1px solid #b8ab94;border-radius:8px}.demo-switch [aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.scene-window{background:var(--bg);border:1px solid #d5cab6;border-radius:12px;box-shadow:0 16px 30px -20px #5b55464d;min-height:300px}.window-heading{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:16px 22px;font-size:13px;font-weight:700}.window-heading>span:last-child{color:var(--accent);font-size:12px;text-align:right}.scene-content{padding:24px;min-height:260px}.request-person{display:flex;align-items:center;gap:12px;margin-bottom:20px}.avatar{width:40px;height:40px;display:grid;place-items:center;background:#EAD6C4;color:var(--accent);border-radius:12px;font-size:13px}.request-person strong{font-size:16px}.request-person small{display:block;color:var(--ink-soft);font-size:12px}.request-details{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:0}.request-details dt{font-size:12px;color:var(--ink-soft)}.request-details dd{font-size:14px;font-weight:600;margin:2px 0 0}.scene-note{font-size:12px;background:#e8e1d4;color:var(--ink-soft);padding:10px 12px;margin-top:20px;border-radius:8px}.document-title{font:500 24px/1.2 var(--font-display);margin:4px 0 14px}.document-line{display:flex;justify-content:space-between;gap:20px;font-size:14px;padding:9px 0;border-bottom:1px solid var(--line)}.document-line strong{font-weight:600}.approval-check{font-size:14px;padding:9px 0}.approval-check::before{content:'✓';color:var(--accent);font-weight:700;margin-right:10px}.approval-stamp{margin-top:14px;background:var(--accent);color:#fff;padding:12px;text-align:center;font-size:13px;font-weight:600;border-radius:8px}.follow-item{display:flex;gap:16px;align-items:flex-start;margin-bottom:18px;font-size:14px}.follow-item>span{font-size:12px;color:var(--accent);font-weight:700;min-width:40px}.follow-item small{display:block;color:var(--ink-soft);font-size:12px}
.demo-timeline{display:grid;grid-template-columns:repeat(4,1fr);padding:0 30px;gap:12px}.demo-timeline button{border:0;border-top:2px solid #c8baa2;background:transparent;text-align:left;padding:14px 4px;color:var(--ink-soft);font-size:14px}.demo-timeline button span{margin-right:12px;font-size:12px}.demo-timeline [aria-current=step]{border-color:var(--accent);color:var(--accent);font-weight:700}.demo-controls{background:var(--bg);display:flex;align-items:center;gap:20px;padding:15px 30px;border-top:1px solid var(--line);font-size:12px}.demo-controls button{background:transparent;border:0;font-size:13px;color:var(--ink);padding:8px 0;text-decoration:underline;text-underline-offset:4px}.demo-controls button:first-child{color:var(--accent);font-weight:700}.demo-controls>span{color:var(--ink-soft);margin-left:auto}.demo-disclaimer{font-size:12px;color:var(--ink-soft);margin:15px 0;max-width:800px}
.motion-demo.is-expanded{position:fixed;inset:20px;z-index:100;background:#EFE6D6;overflow:auto;display:flex;flex-direction:column}.motion-demo.is-expanded .demo-layout{flex:1}.motion-demo.is-expanded .demo-story h3{font-size:clamp(32px,4vw,56px)}.motion-demo.is-expanded .demo-story>p{max-width:430px}.motion-demo.is-expanded .scene-window{max-width:620px;width:100%;justify-self:center}body.demo-open{overflow:hidden}
.offer-row{display:grid;grid-template-columns:50px 1fr 1.4fr .8fr;gap:24px;align-items:baseline;padding:32px 0;border-top:1px solid var(--line)}.offer-row h3{font-size:25px;font-weight:500}.offer-row p{font-size:16px;color:var(--ink-soft);max-width:420px}.offer-number{color:var(--accent);font-size:13px}.offer-detail{font-size:12px;color:var(--ink-soft);text-align:right}
.human-section{display:grid;grid-template-columns:1fr 2fr;gap:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:70px;padding-bottom:70px}.human-mark{font-size:120px;line-height:1;color:var(--accent);justify-self:center}.human-section p{max-width:590px;color:var(--ink-soft);margin:22px 0}.text-link{display:inline-block;color:var(--accent);border-bottom:1px solid currentColor;padding-bottom:4px;font-weight:600;font-size:15px}
.travel-faq{display:grid;grid-template-columns:1fr 1.4fr;gap:50px}.faq-items details{padding:18px 0;border-bottom:1px solid var(--line)}.faq-items summary{cursor:pointer;font-weight:600;font-size:17px}.faq-items p{color:var(--ink-soft);font-size:15px;max-width:590px;margin-top:15px}.travel-contact{display:grid;grid-template-columns:1fr 1fr;gap:90px}.travel-contact>div>p:not(.travel-eyebrow){color:var(--ink-soft);max-width:400px;margin:24px 0}.travel-contact .contact-form{padding:28px;background:#EFE6D6;border:1px solid var(--line);border-radius:20px}.travel-contact .contact-form label span{font-size:14px}.travel-contact input,.travel-contact textarea{background:var(--bg);color:var(--ink);border-color:#a99a80}.travel-contact input::placeholder{color:#665c4d}.form-note{font-size:12px;color:var(--ink-soft);line-height:1.5}.travel-footer{max-width:var(--travel-max);margin:auto;padding:35px 40px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;align-items:center}.travel-footer p{font-size:13px;color:var(--ink-soft)}.travel-footer nav{display:flex;gap:15px;font-size:12px}
@media(prefers-reduced-motion:no-preference){.travel-intro{animation:travel-enter .7s ease both}.travel-photo{animation:travel-enter .9s .12s ease both}.scene-content.scene-enter{animation:travel-enter .5s cubic-bezier(.2,.8,.2,1) both}.scene-content.scene-enter>*{animation:travel-enter .5s .07s both}.scene-content.scene-enter>:nth-child(2){animation-delay:.14s}.scene-content.scene-enter>:nth-child(3){animation-delay:.21s}@keyframes travel-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}}
@media(min-width:1500px){.travel-hero{padding-top:70px}.travel-photo img{height:500px}}
@media(max-width:1024px){.travel-header nav{gap:16px}.travel-header nav>a:nth-child(2){display:none}.travel-hero{gap:24px;padding-top:35px}.travel-intro h1{font-size:38px}.travel-photo img{height:400px}.travel-context{flex-direction:column}.travel-context ul{max-width:none}.demo-layout{gap:28px;padding:32px}.demo-story h3{font-size:28px}.offer-row{grid-template-columns:30px 1fr 1.4fr}.offer-detail{display:none}.travel-contact{gap:40px}.travel-footer{flex-wrap:wrap}}
@media(max-width:767px){.travel-header{padding:0 22px;min-height:72px;gap:12px}.travel-header .logo{font-size:20px}.travel-header nav>a:not(.travel-cta){display:none}.travel-header .travel-cta{font-size:12px;padding:11px 12px}.travel-hero{grid-template-columns:1fr;padding:30px 22px 0;gap:30px}.travel-intro h1{font-size:clamp(32px,7.5vw,48px)}.travel-eyebrow{font-size:11px;margin-bottom:16px}.travel-intro>p:not(.travel-eyebrow){font-size:17px;margin-bottom:22px}.travel-photo img{height:300px}.travel-context{padding:22px 22px 35px;margin-top:15px;gap:20px}.travel-context ul{flex-wrap:wrap;gap:12px 22px;font-size:13px}.travel-context li{max-width:135px}.journey-section,.travel-offer,.travel-faq,.travel-contact,.human-section{padding:48px 22px}.demo-top{padding:16px}.demo-category{display:none}.demo-label{font-size:10px}.demo-layout{grid-template-columns:1fr;gap:22px;padding:24px 18px;min-height:0}.scene-count{margin-bottom:10px}.demo-story h3{font-size:28px}.demo-story>p{min-height:0;max-width:none;font-size:15px}.demo-switch{margin-top:15px}.scene-content{padding:18px}.scene-window{min-height:300px}.demo-timeline{padding:0 14px;gap:8px}.demo-timeline button{font-size:11px}.demo-timeline button span{display:block;margin-bottom:4px}.demo-controls{padding:10px 16px;gap:15px;flex-wrap:wrap}.demo-controls>span{order:5;margin-left:0;width:100%}.demo-controls button{font-size:12px}.demo-controls button:last-child{margin-left:auto}.motion-demo.is-expanded{inset:8px}.motion-demo.is-expanded .demo-story h3{font-size:28px}.offer-row{grid-template-columns:25px 1fr;gap:12px;padding:25px 0}.offer-row p{grid-column:2}.human-section{grid-template-columns:1fr;gap:15px}.human-mark{font-size:65px;justify-self:start}.travel-faq,.travel-contact{grid-template-columns:1fr;gap:25px}.travel-contact .contact-form{padding:22px}.travel-footer{padding:30px 22px;flex-direction:column;align-items:flex-start}.travel-footer nav{flex-wrap:wrap}.window-heading{padding:14px 18px;font-size:12px}.request-details dd{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.travel-page *, .travel-page *::before,.travel-page *::after{animation:none!important;transition:none!important}}

/* Preserve Kal Studio identity; editorial use cases replace the travel campaign. */
.case-directory{border-top:1px solid var(--line);padding:28px 0}.case-directory>a{display:flex;align-items:center;gap:22px;padding:24px 0;border-bottom:1px solid var(--line)}.case-directory>a>span{font-size:12px;color:var(--accent)}.case-directory strong{display:block;font:500 26px var(--font-display)}.case-directory small{display:block;color:var(--ink-soft);margin-top:6px}.case-directory b{margin-left:auto;color:var(--accent);font-weight:400}.directory-note{font-size:12px;color:var(--ink-soft);margin-top:20px}.concrete-section{max-width:var(--travel-max);margin:auto;padding:70px 40px 0}.concrete-case{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;padding:65px 0;border-top:1px solid var(--line);scroll-margin-top:40px}.case-heading h3{font-size:clamp(30px,3.2vw,40px);font-weight:500;line-height:1.16;letter-spacing:-.025em}.case-heading>p:not(.travel-eyebrow){color:var(--ink-soft);margin:22px 0 28px}.case-caption{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--accent);margin-bottom:20px}.case-item{padding:0 0 22px}.case-item h4{font:700 17px var(--font-body);margin-bottom:7px}.case-item p,.case-scope dd{font-size:15px;color:var(--ink-soft);line-height:1.6}.case-flow{font-size:14px;background:#EFE6D6;padding:20px;border-left:2px solid var(--accent);line-height:1.7}.case-scope{margin:24px 0 0}.case-scope>div{padding:12px 0;border-bottom:1px solid var(--line)}.case-scope dt{font-size:13px;font-weight:700;margin-bottom:6px}.case-scope dd{margin:0}@media(max-width:767px){.concrete-section{padding:48px 22px 0}.concrete-case{grid-template-columns:1fr;gap:30px;padding:38px 0}.case-directory{padding:16px 0}.case-directory>a{padding:19px 0}.case-directory strong{font-size:24px}}

/* Intro motion follows the homepage's staggered letter reveal. Grid reserves
   the tallest phrase so the paragraph and CTA never jump between scenes. */
.case-rotator{display:grid}
.case-rotator>span{grid-area:1/1;visibility:hidden}
.case-rotator>span.is-current{visibility:visible}
.case-rotator .motion-word{display:inline-block;white-space:nowrap}
.case-rotator .motion-letter{display:inline-block}
.intro-motion-toggle{display:block;margin-top:16px;padding:4px 0;border:0;background:transparent;color:var(--ink-soft);font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.intro-motion-toggle[hidden]{display:none}
@media(prefers-reduced-motion:no-preference){
.case-rotator.is-animated>span.is-current .motion-letter{animation:case-letter-in .65s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--letter-delay)}
@keyframes case-letter-in{from{opacity:0;filter:blur(5px);transform:translateY(.24em)}to{opacity:1;filter:blur(0);transform:translateY(0)}}
}

/* Keep each example scannable; project scope is available on demand. */
.case-details{border-top:1px solid var(--line);margin-top:2px}
.case-details summary{padding:16px 0;cursor:pointer;font-size:14px;font-weight:600;color:var(--accent)}
.case-details summary::marker{color:var(--accent)}
.case-details .case-scope{margin:0 0 10px}
.case-details[open] summary{padding-bottom:6px}

/* Alternate the editorial columns; retain reading order on small screens. */
@media(min-width:768px){
  .concrete-case:nth-of-type(even){grid-template-columns:1.3fr 1fr}
  .concrete-case:nth-of-type(even) .case-heading{grid-column:2;grid-row:1}
  .concrete-case:nth-of-type(even) .case-delivery{grid-column:1;grid-row:1}
}
