/* Bosque nocturno: warm cream, forest and sage. */
@media(prefers-reduced-motion:no-preference){
  .home .hero-image{animation-duration:1.9s;animation-delay:.14s}
  .home .hero-eyebrow{animation-duration:1.15s;animation-delay:.28s}
  .home .hero h1{animation-duration:1.15s;animation-delay:.36s}
  .home .hero-bottom{animation-duration:1.2s;animation-delay:.48s}
  .home .hero .text-sequence.text-entered .text-word{animation-duration:850ms;animation-delay:calc(var(--word-delay,0ms) + 160ms)}
  .home .site-header .brand{animation:hero-soft-appear 1.1s var(--ease) .16s both}
  .home .desktop-nav{animation:hero-soft-appear 1.1s var(--ease) .24s both}
  .home .header-contact,.home .mobile-nav{animation:hero-soft-appear 1.1s var(--ease) .3s both}
  .home .hero-note{animation:hero-soft-appear 1.15s var(--ease) .32s both}
  .home .floating-contact{animation:hero-soft-appear 1.15s var(--ease) .5s both}
}
@keyframes hero-soft-appear{from{opacity:0}to{opacity:1}}
.hero-note .note-arrow{display:grid;place-items:center;background:#f0e9da;color:#142e28;width:30px;height:30px;border-radius:50%;margin-left:20px;transition:transform .4s var(--ease),background .4s}
.hero-note{cursor:pointer;overflow:hidden;z-index:5;pointer-events:auto}
.hero-note::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 20%,#ffffff12 50%,transparent 80%);transform:translateX(-120%);transition:transform .65s var(--ease)}
@media(min-width:1001px){
  .home .hero{--hero-copy-shift:clamp(38px,7svh,90px)}
  .home .hero-eyebrow,.home #home-title,.home .hero-bottom>div{translate:0 var(--hero-copy-shift)}
}

@media(prefers-reduced-motion:reduce){.hero-note::before{display:none}.hero-note .note-arrow{transition:none;transform:none!important}}
.brand>span,.footer-wordmark{display:inline-block;transition:transform .4s var(--ease),filter .4s var(--ease)}
.brand small{transition:letter-spacing .4s var(--ease),opacity .4s var(--ease)}
.brand-dot{display:inline-block;transition:transform .45s var(--ease),color .3s}
.hero-note{transition:transform .4s var(--ease),background .4s,border-color .4s,box-shadow .4s}
.hero-note>a{transition:transform .4s var(--ease),background .4s}
.hero-note .tiny-orbit{transition:transform .6s var(--ease)}
@media(hover:hover) and (pointer:fine){
  .brand:hover>span,.brand:focus-visible>span{transform:translateY(-2px)}
  .brand:hover small,.brand:focus-visible small{letter-spacing:.29em;opacity:.85}
  .brand:hover .brand-dot,.brand:focus-visible .brand-dot{transform:translateY(-3px) scale(1.2)}
  .footer-wordmark:hover{transform:translateY(-3px)}
  .hero-note:hover,.hero-note:focus-within{transform:translateY(-4px);background:#2546388c;border-color:#a9b7a1a6;box-shadow:0 14px 35px #06181026}
  .hero-note:hover>a,.hero-note:focus-within>a{transform:rotate(8deg) scale(1.08);background:#e0e9d5}
  .hero-note:hover .tiny-orbit,.hero-note:focus-within .tiny-orbit{transform:rotate(-8deg)}
}
@media(prefers-reduced-motion:reduce){.brand>span,.brand small,.brand-dot,.footer-wordmark,.hero-note,.hero-note>a,.hero-note .tiny-orbit{transition:none;transform:none!important}}
.about-image img{object-position:50% 45%}
.about-image{aspect-ratio:4/5}
.support-hero img[src*="leti-serena"]{object-position:center 42%}
:root{--paper:#f0e9da;--cream:#e1e5d8;--ink:#19352d;--muted:#52665b;--cocoa:#142e28;--terra:#486850;--line:#c7cec0}
::selection{background:#a9b7a1;color:#142e28}
.button:hover{background:#294b3e}
.button-light:hover,.header-contact:hover{background:#dce3d2;color:#142e28;border-color:#dce3d2}
.header-inner .header-contact:hover{background:#294b3e;color:var(--paper)}
.brand-dot,.footer-wordmark>span{color:#a9b7a1}
.home .site-header{background:linear-gradient(#10271e88,transparent)}
.hero{background:#142e28;color:#f0e9da}
.hero-shade{background:linear-gradient(0deg,#142e28 0%,#142e28b0 14%,#142e2800 65%),linear-gradient(90deg,#10291fc0,#10291f50 47%,transparent 75%)}
.hero-eyebrow,.hero h1 em,.hero-description,.hero-note{color:#f0e9da}
.hero-note{background:#142e285c;border-color:#a9b7a15c;backdrop-filter:blur(12px)}
.hero-note p>span{color:#d7dfce}
.hero-note>a{background:#f0e9da;color:#142e28}
.opening{color:#f0e9da}
.opening-grid>.eyebrow,.opening-grid .section-index,.opening h2 em{color:#a9b7a1}
.opening-bottom>p,.intentions{color:#c7d1be}
.opening-bottom .text-link{color:#f0e9da;border-color:#78917b}
.intentions,.intentions span+span{border-color:#496052}
.support-intro h2 em,.location-heading h2 em{color:#486850}
.service-row .mini-label,.row-number,.row-arrow,.reading-number,.reading-sidebar nav>a>span{color:#607461}
.row-arrow,.support-section .row-arrow{border-color:#a9b7a1;color:#486850}
.support-section .service-row{border-color:#c7cec0}
.service-row:hover{background:#dfe5d444}
.photo-note p em,.portrait-caption em{color:#d6dfc9}
.way-card{color:#f0e9da}
.way-card::before{background:linear-gradient(0deg,#10271eeb,transparent 90%)}
.way-card .mini-label{color:#d4deca}
.process-section,.individual-section,.inline-consult{background:#e1e5d8}
.step-number{color:#698365}
.contact-section{background:#142e28}
.contact-section::before{background-image:url("images/leti-hero-1600.webp")}
.contact-section::after{background:linear-gradient(90deg,#10271ef2,#10271e8c)}
.contact-section h2 em{color:#c7d5ba}
.contact-aside{background:#142e2866}
.contact-aside>div{border-color:#a9b7a144}
.contact-aside>div>p,.contact-status{color:#cbd5bf}
.site-footer{color:#f0e9da}
.footer-profession,.footer-bottom,.footer-note{color:#b8c8ad}
.footer-bottom{border-color:#496052}
.footer-silos .mini-label{color:#a9b7a1}
.footer-silos a{color:#e3e9d8}
.service-portrait::after,.pillar-photo:after{background:linear-gradient(transparent,#10271eba)}
.portrait-caption,.pillar-photo figcaption{color:#f0e9da}
.guide-intro .eyebrow,.source-link,.cluster-link .mini-label{color:#526b55}
.answer-summary>p:not(.eyebrow),.reading-section p{color:#41574a}
.sidebar-contact>p em,.sidebar-contact>small{color:#c7d5ba}
.cluster-link{background:#e7e9de}
.cluster-link:hover{background:#dce3d2;border-color:#a9b7a1}
.support-hero figcaption{background:linear-gradient(transparent,#142e28bf);color:#f0e9da}
.service-description,.location-heading p:not(.eyebrow),.abroad-intro>p:last-child,.abroad-card>p{color:#52665b}
.location-home{background:#e5e8dd;color:#19352d}
.province-grid a:hover,.province-grid a>span{color:#486850}
.abroad-card{background:#f5f3e9}
.abroad-card:hover{border-color:#a9b7a1}
.floating-booking{background:#142e28;color:#f0e9da;border-color:#a9b7a166}
.agenda-option:disabled{color:#667563}
.scroll-story{background:#142e28;color:#f0e9da}
.scroll-story .eyebrow{color:#a9b7a1}
@media(max-width:650px){.hero-shade{background:linear-gradient(0deg,#142e28 0%,#142e28db 16%,#142e2838 72%)}.contact-section::after{background:linear-gradient(90deg,#10271ee6,#10271eaa)}}

.service-portrait img[src*="leti-editorial"]{object-position:50% 30%}
/* Keep the complete portrait at its natural proportions on wide monitors. */
@media(min-width:1800px){
  .hero-image{left:auto;right:clamp(70px,6vw,190px);top:24px;width:auto;max-width:none;height:112%;object-fit:contain;object-position:right top;mask-image:linear-gradient(90deg,transparent,#000 22%,#000 90%,transparent)}
}
.contact-section::before{background-size:auto 100%;background-position:right top;background-repeat:no-repeat;mask-image:linear-gradient(90deg,transparent,#000 28%)}
@media(min-width:1800px){.contact-section::before{right:6vw}}
@media(max-width:650px){.contact-section::before{background-position:right top;opacity:.35}}
.contact-mobile-portrait{display:none}
@media(max-width:650px){
  .home .hero{height:auto;min-height:0;padding-bottom:92px}
  .home .hero-image{inset:96px 16px auto;width:calc(100% - 32px);height:300px;object-fit:cover;object-position:100% 15%;border-radius:16px;mask-image:linear-gradient(#000 75%,transparent)}
  .home .hero-shade{background:linear-gradient(0deg,#142e28 0%,#142e2800 55%)}
  .home .hero-note{display:none}
  .home .hero-content{padding-top:414px;padding-bottom:0;height:auto}
  .home .hero-eyebrow{position:static;max-width:30ch;margin-bottom:22px;font-size:11px}
  .home .hero h1{font-size:clamp(39px,11.4vw,48px);line-height:1.08}
  .home .hero-bottom{margin-top:24px}
  .home .hero-description{line-height:1.75}
  .home .hero .button{margin-top:24px}
  .section-space{padding-block:56px}
  .opening,.support-section,.process-section,.contact-section,.individual-section{padding-block:56px}
  .opening-grid,.support-layout,.about-section,.modalities,.faq-section{row-gap:32px}
  .section-heading{margin-bottom:28px;gap:22px}
  .ways-section{padding-top:20px;padding-bottom:24px}
  .ways-grid{gap:20px}
  .ways-note{margin-top:18px}
  .location-home{margin-top:32px;padding-block:56px}
  .location-heading{margin-bottom:32px}
  .abroad-intro{margin-top:40px;margin-bottom:24px}
  .abroad-grid{gap:18px}
  .breadcrumbs{padding-block:24px 28px}
  .services-hero,.pillar-hero,.guide-intro,.support-hero,.location-hero{padding-top:12px;padding-bottom:44px}
  .service-hero-grid,.pillar-hero-grid,.support-hero{row-gap:32px}
  .service-hero-copy{margin-top:24px}
  .service-portrait{margin-top:4px}
  .support-deck,.pillar-deck,.guide-deck,.location-deck{margin-top:24px;margin-bottom:24px}
  .reading-layout{padding-top:32px;padding-bottom:48px}
  .reading-sidebar{margin-bottom:36px}
  .reading-section{margin-bottom:44px;scroll-margin-top:24px}
  .reading-section h2{margin-bottom:22px}
  .inline-consult{margin-block:36px 44px;padding:26px 22px}
  .cluster-section{padding-bottom:48px}
  .cluster-grid{gap:18px}
  .journey-grid{padding-block:36px 44px;gap:32px}
  .support-next{padding-block:28px;gap:24px}
  .contact-section::before{display:none}
  .contact-section::after{background:none}
  .contact-mobile-portrait{display:block;width:100%;height:340px;object-fit:cover;object-position:50% 24%;border-radius:14px;margin:0 0 32px}
  .contact-grid{row-gap:36px}
  .contact-section h2+p{margin-top:26px;line-height:1.8}
  .contact-section .booking-detail{display:flex;margin-top:24px;gap:16px;line-height:1.65}
  .contact-aside{padding:24px 20px}
  .contact-status{margin-top:20px!important;line-height:1.8!important}
  .footer-credit{margin-top:24px}
  .site-footer{padding-bottom:calc(100px + env(safe-area-inset-bottom))}
  .scroll-story-pin{padding-block:64px 94px}
  .contact-dialog{padding:36px 24px}
}
@media(max-width:650px){
  .home .hero{min-height:860px;padding-bottom:86px}
  .home .hero-image{inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 25%;border-radius:0;mask-image:none}
  .home .hero-shade{background:linear-gradient(0deg,#142e284d,transparent 40%),linear-gradient(0deg,#10271e91,transparent 65%)}
  .home .hero-content{padding-top:414px}
}
@media(min-width:1001px){
  .contact-grid{grid-template-columns:1.5fr .7fr;gap:100px;align-items:center}
  .contact-grid>div:first-child,.contact-aside{width:auto;max-width:none}
  .contact-aside{display:block;padding:25px;background:#142e2866;backdrop-filter:blur(9px)}
  .contact-section::before{inset:0;background-size:cover;background-position:center 8%;opacity:.62;mask-image:none}
  .contact-section::after{background:linear-gradient(90deg,#10271ef2,#10271e8c)}
}
@media(min-width:651px) and (max-width:1000px){
  .contact-grid{grid-template-columns:1fr;gap:32px}
  .contact-section::before{display:none}
  .contact-section::after{background:none}
  .contact-mobile-portrait{display:block;width:100%;max-width:460px;height:360px;object-fit:cover;object-position:50% 24%;border-radius:14px;margin-bottom:32px}
}

@media(hover:hover) and (pointer:fine){
  .hero-note:hover,.hero-note:focus-visible{transform:translateY(-6px);background:#294d3dcc;border-color:#bed0afa6;box-shadow:0 18px 38px #06181040}
  .hero-note:hover::before,.hero-note:focus-visible::before{transform:translateX(120%)}
  .hero-note:hover .note-arrow,.hero-note:focus-visible .note-arrow{transform:translate(2px,-2px) rotate(7deg);background:#dfead5}
}
