/* PINCA — an authentic photographic journey. Native scrolling, no canvas. */
.studio-intro{display:none}
.intro-pending .studio-intro{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:var(--paper);animation:intro-safety .1s 4s forwards}
.intro-composition{position:relative;width:min(65vw,430px);padding-block:100px;text-align:center}
.intro-logo{position:relative;width:100%;animation:logo-arrive 1.1s .35s both}
.intro-signature{font:500 11px/1.5 var(--sans);letter-spacing:.2em;text-transform:uppercase;margin-top:26px;animation:logo-arrive .8s .65s both}
.intro-lines{position:absolute;inset:-15px;display:grid;place-items:center;pointer-events:none}
.intro-lines i{position:absolute;width:120px;aspect-ratio:1;border:1px solid var(--red);animation:line-unfold 1.65s cubic-bezier(.2,.7,.2,1) both}
.intro-lines i:nth-child(2){animation-delay:.13s}.intro-lines i:nth-child(3){animation-delay:.26s}
.intro-bottom{position:absolute;bottom:46px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:20px;font:600 10px/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase}
.intro-bottom button{background:none;border:0;border-bottom:1px solid var(--line);padding:12px 0;color:var(--ink);font:inherit;letter-spacing:inherit;text-transform:inherit}
.intro-bottom button span{display:inline-block;margin-left:20px;color:var(--red);font-size:18px}
.intro-line{position:absolute;bottom:0;left:0;height:4px;width:100%;background:var(--red);transform-origin:left;animation:line-draw 2.1s cubic-bezier(.2,.65,.25,1) both}
.intro-pending .studio-intro.is-leaving{transform:translateY(-102%);transition:transform .7s cubic-bezier(.76,0,.24,1);pointer-events:none}
@keyframes line-unfold{0%{transform:scale(.25) rotate(-90deg);opacity:0}30%{opacity:.45}100%{transform:scale(4) rotate(0);opacity:0}}
@keyframes logo-arrive{from{transform:translateY(18px);opacity:0}to{transform:none;opacity:1}}
@keyframes line-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes intro-safety{to{visibility:hidden;pointer-events:none}}

/* Solid, unambiguous navigation; no decorative object behind the actions. */
.home-journey .site-header:not(.is-scrolled):not(.menu-is-open){background:var(--paper);color:var(--ink);border-color:var(--line)}
.home-journey .site-header:not(.is-scrolled):not(.menu-is-open) .brand{filter:none}
.home-journey .site-header:not(.is-scrolled) .header-book{background:var(--red);color:#fff}
.home-journey .site-header:not(.is-scrolled) .header-phone{border-color:var(--line)}
.home-journey{--chapter-height:58px}
.home-journey section[id]{scroll-margin-top:var(--chapter-height)}
.journey-opening{padding-top:calc(var(--header) + clamp(40px,5vw,76px));background:var(--paper)}
.opening-kicker{display:flex;justify-content:space-between;gap:22px;font:600 11px/1.5 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--red);margin-bottom:42px}
.opening-title {
  font-size: clamp(42px, 6.5vw, 96px);
  line-height: 1.025;
  letter-spacing: -.045em;
  font-weight: 400;
  text-wrap: initial;
}

.opening-title > span {
  display: block;
}

.opening-title > span:first-child {
  padding-bottom: .1em;
}
.opening-title>span:nth-child(2){color:var(--red)}
.opening-bottom{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:42px;align-items:end;padding-bottom:52px}
.opening-intro{max-width:560px;justify-self:end}
.opening-intro>p{font:500 16px/1.6 var(--sans);max-width:430px}
.opening-intro .button-row{margin-top:18px;gap:15px 30px}
.opening-intro .text-link{margin:0;font-size:10px;letter-spacing:.08em;gap:14px;padding-block:10px}
.scroll-invitation{display:flex;align-items:center;gap:20px;font:600 11px/1.6 var(--sans);text-transform:uppercase;letter-spacing:.1em;width:fit-content}
.scroll-arrow{display:grid;place-items:center;width:58px;height:74px;border:1px solid var(--line);font-size:25px;color:var(--red);transition:transform .35s,border-color .35s}
.scroll-invitation:hover .scroll-arrow{transform:translateY(5px);border-color:var(--red)}
.opening-photo{margin:0;padding-inline:var(--gutter)}
.opening-photo-window{overflow:hidden;aspect-ratio:1.9;background:var(--ivory);clip-path:inset(0 var(--photo-inset,0%));}
.opening-photo-window img{width:100%;height:100%;object-fit:cover;object-position:50% 48%;transform:scale(var(--photo-scale,1));}
.opening-photo figcaption{display:flex;justify-content:space-between;gap:20px;padding-block:20px 30px;width:100%;font:500 10px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.journey-nav{position:sticky;top:var(--header);z-index:20;background:var(--paper);border-block:1px solid var(--line);height:var(--chapter-height);padding-inline:var(--gutter)}
.journey-nav ol{max-width:var(--content);height:100%;margin:auto;display:grid;grid-template-columns:repeat(4,1fr)}
.journey-nav a{height:100%;display:flex;align-items:center;gap:16px;font:600 11px/1.4 var(--sans);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);transition:color .25s}
.journey-nav a>span:first-child{font-size:10px;color:var(--muted)}
.journey-nav a[aria-current],.journey-nav a:hover{color:var(--red)}
.journey-nav a[aria-current]>span:first-child{color:var(--red)}
.journey-progress{position:absolute;bottom:-1px;left:0;right:0;height:2px;background:transparent;pointer-events:none}
.journey-progress>span{display:block;width:100%;height:100%;background:var(--red);transform:scaleX(var(--journey-progress,0));transform-origin:left}
.story-heading{display:grid;grid-template-columns:1fr 2.3fr;gap:8%;align-items:start;margin-bottom:60px}
.story-heading .eyebrow{margin-top:10px}
.story-heading h2{font-size:clamp(38px,4.5vw,66px);max-width:900px;line-height:1.08}
.studio-sequence{display:block}
.story-step{display:grid;grid-template-columns:1fr 1.3fr;gap:10%;align-items:center;padding-block:45px;border-bottom:1px solid var(--line)}
.story-step h3{font-size:clamp(35px,3.9vw,58px);line-height:1.08;margin-block:28px}
.story-step-copy>p:not(.story-index){font-size:17px;line-height:1.75;max-width:360px;color:var(--muted)}
.story-index{font:600 11px/1.6 var(--sans);color:var(--red);letter-spacing:.12em;text-transform:uppercase;display:flex;gap:20px;align-items:center}
.story-index::after{content:'';width:65px;height:1px;background:var(--line)}
.story-index span{color:var(--muted)}
.story-step .text-link{font-size:10px;gap:20px;margin-top:24px}
.story-mobile-photo img{width:100%;aspect-ratio:4/3;object-fit:cover}
.story-step:nth-child(2) .story-mobile-photo img{object-fit:contain;background:var(--ivory)}
.story-mobile-photo figcaption{font:500 10px/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase;margin-top:16px;color:var(--muted)}
.story-visual{display:none}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){
  .journey-ready .studio-sequence{display:grid;grid-template-columns:1fr 1.3fr;gap:10%;align-items:start}
  .journey-ready .story-step{min-height:75svh;display:flex;border:0;padding:50px 0}
  .journey-ready .story-mobile-photo{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .journey-ready .story-visual{display:block;position:sticky;top:calc(var(--header) + var(--chapter-height) + 35px);padding-bottom:35px}
  .story-frames{position:relative;height:clamp(290px,57svh,620px);background:var(--ivory);overflow:hidden}
  .story-frames img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity .75s,transform 1.1s cubic-bezier(.2,.7,.2,1)}
  .story-frames img:nth-child(2){object-fit:contain;padding:20px}
  .story-frames img.is-current{opacity:1;transform:scale(1)}
  .story-visual-caption{display:flex;justify-content:space-between;gap:20px;margin-top:20px;font:500 10px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
  .story-meter{height:1px;background:var(--line);margin-top:20px}
  .story-meter>span{display:block;height:100%;background:var(--red);width:100%;transform-origin:left;transform:scaleX(var(--story-progress,.333));transition:transform .7s}
}
.home-journey .stats{margin-top:35px}
.home-journey .identity-panel{padding-block:90px 25px}
.home-journey .card-stage{background:transparent;border-block:1px solid var(--line);padding-block:20px}
.home-journey .home-practices>.container>div:first-child{display:grid;grid-template-columns:1fr 1.5fr;gap:25px 8%;align-items:start}
.home-journey .home-practices .eyebrow{grid-column:1/-1;margin-bottom:5px}
.home-journey .home-practices .section-title{font-size:clamp(40px,4.5vw,64px)}
.home-journey .home-practices .section-lead{margin-top:0;max-width:590px;justify-self:end}
.home-journey .featured-card{transition:background .3s}
.home-journey .featured-card img{transition:filter .25s,transform .45s}
.home-journey .featured-card:hover img{transform:translateY(-4px)}
.home-journey .home-contact .section-title{font-size:clamp(46px,6.8vw,100px);max-width:1100px}
.home-journey .site-footer{background:var(--ink)}
@media(prefers-reduced-motion:no-preference){
  .intro-complete .opening-title>span{animation:title-enter .85s cubic-bezier(.2,.7,.2,1) backwards}
  .intro-complete .opening-title>span:nth-child(2){animation-delay:.1s}
  .intro-complete .opening-title>span:nth-child(3){animation-delay:.2s}
  .home-journey.reveal-ready [data-reveal]{transition:transform .85s cubic-bezier(.2,.7,.2,1);transform:translateY(28px)}
  .home-journey.reveal-ready [data-reveal].is-visible{transform:none}
  @keyframes title-enter{from{transform:translateY(30px);clip-path:inset(100% 0 0)}to{transform:none;clip-path:inset(0)}}
}
@media(min-width:1600px){.opening-title{font-size:100px}.opening-photo{max-width:1760px;margin:auto}}
@media(max-width:900px){
  .journey-opening{padding-top:calc(var(--header) + 45px)}
  .opening-title{font-size:7.25vw}.opening-kicker{font-size:10px;margin-bottom:35px}
  .opening-bottom{grid-template-columns:.8fr 1.2fr;gap:35px;padding-bottom:35px;margin-top:35px}
  .opening-intro>p{font-size:15px}.opening-intro .button-row{gap:8px 16px}
  .opening-photo-window{aspect-ratio:1.5}
  .story-heading{grid-template-columns:1fr;gap:15px;margin-bottom:40px}.story-heading .eyebrow{margin:0}.story-heading h2{font-size:48px;max-width:650px}
  .story-step{gap:6%;padding-block:40px}.story-step h3{font-size:38px}.story-step-copy>p:not(.story-index){font-size:16px}
  .story-mobile-photo img{aspect-ratio:1/1.2}.story-step:nth-child(2) .story-mobile-photo img{padding:12px}
  .story-step:nth-child(3) .story-mobile-photo img{object-fit:contain;background:var(--ivory)}
  .story-index{font-size:10px;gap:12px}.story-index::after{width:25px}
  .home-journey .identity-panel{padding-block:60px 0}
  .home-journey .home-practices>.container>div:first-child{grid-template-columns:1fr;gap:20px}.home-journey .home-practices .section-lead{justify-self:start}
}
@media(max-width:600px){
  .home-journey{--chapter-height:52px}
  .intro-composition{width:66vw}.intro-bottom{bottom:28px;font-size:8px}.intro-bottom button span{margin-left:8px}
  .journey-opening{padding-top:calc(var(--header) + 32px)}
  .opening-kicker{font-size:8px;letter-spacing:.08em;gap:15px;margin-bottom:28px}.opening-kicker>span:last-child{max-width:115px;text-align:right}
  .opening-title{font-size:8.2vw;line-height:1.12;letter-spacing:-.035em}
  .opening-bottom{display:flex;flex-direction:column-reverse;align-items:stretch;gap:27px;margin-top:26px;padding-bottom:25px}
  .opening-intro{max-width:none}.opening-intro>p{font-size:14px;max-width:330px;line-height:1.65}
  .opening-intro .button-row{gap:10px 16px;margin-top:16px}.opening-intro .text-link{font-size:9px;letter-spacing:.04em;gap:8px}
  .scroll-invitation{font-size:9px;gap:13px}.scroll-invitation br{display:none}.scroll-arrow{width:34px;height:38px;font-size:19px}
  .opening-photo{padding-inline:var(--gutter)}.opening-photo-window{aspect-ratio:1.15}.opening-photo-window img{object-position:48% center}
  .opening-photo figcaption{font-size:8px;letter-spacing:.06em;gap:25px;padding-block:15px 25px}.opening-photo figcaption>span:last-child{text-align:right}
  .journey-nav{padding-inline:var(--gutter)}.journey-nav a{gap:7px;font-size:8px;letter-spacing:.03em}.journey-nav a>span:first-child{font-size:8px}.journey-nav li:last-child a{justify-content:end}
  .story-heading h2{font-size:38px;line-height:1.12}.story-heading{gap:20px;margin-bottom:40px}
  .story-step{display:flex;flex-direction:column;align-items:stretch;gap:30px;padding-block:35px 45px}.story-step h3{font-size:39px;margin-block:24px 20px}
  .story-step-copy>p:not(.story-index){max-width:none;font-size:16px}.story-index{font-size:10px}
  .story-mobile-photo img{aspect-ratio:1.2}.story-step:nth-child(2) .story-mobile-photo img{aspect-ratio:1.15;padding:0}
  .story-mobile-photo figcaption{font-size:9px;margin-top:13px}
  .home-journey .identity-panel{padding-top:50px}.home-journey .home-practices .section-title{font-size:42px}
  .home-journey .home-contact .section-title{font-size:46px}
}
@media(prefers-reduced-motion:reduce){.studio-intro,.intro-pending .studio-intro{display:none}.opening-photo-window{clip-path:none!important}.opening-photo-window img{transform:none!important}.home-journey.reveal-ready [data-reveal]{transform:none!important}}
@media print{.studio-intro,.journey-nav,.scroll-invitation{display:none}.journey-opening{padding-top:0}.opening-title{font-size:40px}.story-step{break-inside:avoid}.story-visual{display:none!important}.story-mobile-photo{position:static!important;width:auto!important;height:auto!important;clip-path:none!important}}
