/* PULO / Studio in Motion. References inform hierarchy, not borrowed identities. */
.swatch--wave { background:var(--st-wave-ground); }
.studio-guide-notes { display:grid;gap:var(--space-6);margin-top:var(--space-8); }
/* The masthead's glyph boxes rise above its line box; the nav stays on top so every link is clickable to its full height. */
.studio-page .focus-nav { border:0; gap:var(--space-8); position:relative; z-index:var(--layer-nav); }
.studio-page .focus-location { font-size:var(--text-small); }
.studio-page .focus-brand { width:var(--if-brand-width); }
.studio-page .focus-hello { border:0; }
.studio-page .focus-nav-links a, .studio-page .focus-hello { position:relative; }
.studio-page .focus-nav-links a::before, .studio-page .focus-hello::before { content:"";position:absolute;inset:0 calc(-1 * var(--st-nav-hit-x)); }
.studio-opening { min-height:var(--st-opening-height);display:flex;flex-direction:column;justify-content:space-between;padding-top:var(--space-8);gap:var(--st-opening-gap); }
.studio-masthead { font-size:var(--st-masthead-size);line-height:var(--st-masthead-leading);letter-spacing:var(--st-masthead-track);font-weight:var(--weight-medium);white-space:nowrap; }
.studio-masthead .masthead-dot { color:var(--accent); }
.studio-opening-note { display:grid;grid-template-columns:var(--st-contact-columns);gap:var(--space-8);align-items:end;padding-bottom:var(--st-hero-bottom); }
.studio-opening-note>div { display:flex;gap:var(--space-12);align-items:end; }
.studio-opening-note p { font-size:var(--st-hero-copy);line-height:var(--leading-body); }
.studio-opening-note>a { display:flex;justify-content:flex-end;align-items:center;gap:var(--space-8);min-height:var(--touch-size);font-size:var(--text-small); }
.studio-opening-note>a>span:last-child { font-size:var(--text-title); }
.studio-wave { background:var(--st-wave-ground);position:relative;overflow:clip;height:var(--st-wave-height);display:grid;place-items:center;isolation:isolate; }
.studio-wave .liquid-art { width:var(--st-wave-size);max-width:none;flex:none;transform:translateY(calc((var(--st-wave-progress) - .5) * var(--st-wave-rise))) scale(var(--st-wave-scale)); }
.studio-wave .liquid-art>img { max-width:none; }
.studio-wave .liquid-toggle { display:none; }
.studio-wave-note { position:absolute;bottom:var(--st-wave-caption-pad);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:calc(100% - var(--page-pad) * 2);pointer-events:none; }
.studio-wave-note>* { font-size:var(--micro-size); }
.studio-wave-instruction { display:none; }
.studio-wave:has([data-liquid-state="idle"],[data-liquid-state="rippling"]) .studio-wave-instruction { display:block; }
.studio-wave-note button { pointer-events:auto; }
.studio-motion-control { border:0;border-bottom:var(--hairline) solid currentColor;background:transparent;padding:var(--space-2) 0;min-height:var(--touch-size);font-size:var(--micro-size); }
.studio-intro { padding-block:var(--st-section-space); }
.studio-intro .eyebrow { margin-bottom:var(--space-8); }
.studio-statement { font-size:var(--st-statement-size);font-weight:var(--weight-medium);line-height:var(--st-statement-leading);letter-spacing:var(--st-statement-track);text-indent:var(--st-statement-indent);text-wrap:pretty; }
.studio-statement em { font-style:normal;color:var(--accent); }
.studio-statement a { text-decoration:underline;text-decoration-thickness:var(--hairline);text-underline-offset:var(--space-2); }
.studio-service-notes { display:grid;grid-template-columns:var(--st-service-columns);gap:var(--space-8);margin-top:var(--space-12);border-top:var(--hairline) solid var(--line);padding-top:var(--space-8); }
.studio-service-notes article { display:grid;grid-template-columns:auto 1fr;gap:var(--space-5); }
.studio-service-notes .micro { color:var(--muted);padding-top:var(--space-2); }
.studio-service-notes h3 { font-size:var(--st-service-title);letter-spacing:var(--tracking-title); }
.studio-service-notes p { margin-top:var(--space-3);max-width:var(--st-service-copy);color:var(--muted); }
.studio-people { padding-block:var(--st-section-space);border-top:var(--hairline) solid var(--line); }
.studio-people-heading { display:flex;justify-content:space-between;gap:var(--space-8);align-items:end;margin-block:var(--space-8); }
.studio-people-heading h2 { font-size:var(--st-people-title);line-height:var(--leading-title);letter-spacing:var(--tracking-display); }
.studio-people-heading>p { max-width:var(--st-service-copy);color:var(--muted); }
.studio-cast { display:grid;grid-template-columns:var(--st-people-columns);gap:var(--st-people-gap); }
.studio-cast .character__caption { border-top:var(--hairline) solid var(--line);padding-block:var(--space-4);font-size:var(--text-lede); }
.studio-cast .character__caption small { font-size:var(--micro-size); }
.studio-people-note { display:flex;justify-content:space-between;gap:var(--space-4);align-items:center;margin-top:var(--space-6);color:var(--muted); }
.studio-people-note .micro { font-size:var(--micro-size); }
.studio-process-phrase { font-size:var(--st-process-phrase-size);line-height:var(--st-process-phrase-leading);letter-spacing:var(--tracking-display);margin-block:var(--space-12); }
.studio-process-phrase>span { display:block;transform:translateX(calc((var(--se-process-progress) - .5) * var(--st-process-drift))); }
.studio-process-phrase>span:last-child { text-align:right;transform:translateX(calc((.5 - var(--se-process-progress)) * var(--st-process-drift))); }
.studio-process-phrase em { color:var(--accent);font-style:normal; }
.studio-process-story { display:grid;grid-template-columns:var(--st-process-story-grid);gap:var(--space-8) var(--space-12);padding-top:var(--space-8);border-top:var(--hairline) solid var(--line); }
.studio-process-lede { font-size:var(--st-process-note-size);max-width:var(--st-service-copy); }
.studio-process-copy { display:grid;grid-template-columns:var(--st-process-copy-grid);gap:var(--space-8); }
.studio-process-copy .studio-process-step { display:block;border:0;padding:0; }
.studio-process-copy .studio-process-step h3 { font-size:var(--text-body);letter-spacing:var(--tracking-title);padding:0;margin-bottom:var(--space-3); }
.studio-process-copy .studio-process-step h3 small { font-family:var(--mono);font-size:var(--micro-size);color:var(--muted);margin-right:var(--space-3); }
.studio-process.is-editorial-paused .studio-process-phrase>span { transform:none; }
.studio-contact { padding-block:var(--st-section-space) var(--space-12);border-top:var(--hairline) solid var(--line); }
.studio-contact-top { display:flex;justify-content:space-between;align-items:center;gap:var(--space-4); }
.studio-contact-top .micro { font-size:var(--micro-size);color:var(--muted); }
.studio-contact-title { font-size:var(--st-contact-title);line-height:var(--st-contact-leading);letter-spacing:var(--tracking-display);font-weight:var(--weight-medium);margin-top:var(--space-8); }
.studio-contact-title>span { color:var(--accent); }
.studio-hello-ink { display:inline-block;vertical-align:var(--st-hello-baseline);width:var(--st-hello-width);margin-inline-start:var(--st-hello-gap); }
.studio-hello-ink img { display:block;width:100%;height:auto;color:var(--accent);font:inherit; }
.studio-contact-cast { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:var(--st-contact-stage);margin:var(--space-8) auto var(--st-contact-stage-bottom); }
.studio-contact-cast .character__art { transition:transform var(--character-response) var(--character-ease); }
.studio-contact-grid { display:grid;grid-template-columns:var(--st-contact-columns);gap:var(--st-contact-gap); }
.studio-contact-choice { border-top:var(--hairline) solid var(--ink);padding-top:var(--space-6); }
.studio-contact-choice>p { color:var(--muted);font-size:var(--text-small); }
.studio-contact-choice h3 { font-size:var(--st-contact-subtitle);letter-spacing:var(--tracking-title);line-height:var(--leading-title);margin-top:var(--space-4); }
.studio-contact-choice .contact-email { display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:var(--touch-size);margin-block:var(--space-5);font-size:var(--text-body);border-bottom:var(--hairline) solid var(--line);overflow-wrap:anywhere; }
.studio-contact-choice .contact-email:hover { color:var(--accent); }
.studio-contact-choice .enquiry-compose { margin-top:var(--space-8); }
.studio-contact-choice .enquiry-compose>summary { font-size:var(--text-body); }
.studio-footer { padding-block:var(--space-8) var(--space-5); }
.studio-footer-line { display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);border-top:var(--hairline) solid var(--line);padding-top:var(--space-5);font-size:var(--st-footer-small);color:var(--muted); }
.studio-footer-line a { min-height:var(--touch-size);display:flex;align-items:center;gap:var(--space-3); }
.studio-signoff { font-size:var(--st-footer-size);line-height:var(--st-footer-line);letter-spacing:var(--st-masthead-track);white-space:nowrap;display:flex;align-items:baseline;justify-content:center;padding-block:var(--space-12); }
.studio-signoff .character { display:inline-block;width:var(--st-footer-character);flex:none;margin-inline:calc(-1 * var(--space-3)); }
.studio-signoff .character__art { transform:translateY(var(--st-cameo-bottom)); }
.studio-signoff>span:last-child { color:var(--accent); }
.studio-veil { display:none;position:fixed;inset:0;z-index:var(--st-intro-layer);background:var(--accent);pointer-events:none;overflow:hidden; }
.studio-veil.is-playing { display:grid;place-items:center; }
.studio-veil img { width:var(--st-intro-size);height:var(--st-intro-size);max-width:none;object-fit:contain;transform:rotate(var(--st-intro-turn)); }
.studio-veil.is-playing img {
  animation-name:studio-signature-arrival;
  animation-duration:calc(var(--st-intro-time) * (1 - var(--st-intro-hold)));
  animation-timing-function:var(--st-intro-mark-ease);
  animation-delay:calc(var(--st-intro-time) * var(--st-intro-hold));
  animation-fill-mode:both;
}
.studio-veil>.micro { position:absolute;bottom:var(--space-8);left:var(--page-pad);color:var(--paper);font-size:var(--micro-size); }
@keyframes studio-signature-arrival { from { transform:rotate(var(--st-intro-turn)) scale(var(--st-intro-scale-start)); } to { transform:rotate(0deg) scale(var(--st-intro-scale-end)); } }
.studio-page.is-motion-paused .studio-wave .liquid-art { transform:none; }
.studio-page.is-motion-paused *, .studio-page.is-motion-paused *::before,.studio-page.is-motion-paused *::after { animation-play-state:paused!important;transition:none!important; }
@media(max-width:960px) { .studio-page .focus-location { display:none; } .studio-opening-note>div { gap:var(--space-8); } }
@media(max-width:720px) {
  .studio-page .focus-nav { padding-block:var(--space-3);gap:0 var(--space-6); }
  .studio-page .focus-nav-links { margin-top:var(--space-3); }
  .studio-opening { padding-top:var(--space-8); }
  .studio-opening-note { grid-template-columns:1fr auto;gap:var(--space-4); }
  .studio-opening-note>div { display:block; }
  .studio-opening-note>div p+p { margin-top:var(--space-4);color:var(--muted);font-size:var(--text-small); }
  .studio-opening-note>a { align-self:end;gap:var(--space-2); }
  .studio-opening-note>a .scroll-label { display:none; }
  .studio-wave-note { align-items:center;top:var(--space-3);bottom:auto; }
  .studio-wave-note>span { max-width:50%; }
  .studio-service-notes { gap:var(--space-6); }
  .studio-service-notes article+article { border-top:var(--hairline) solid var(--line);padding-top:var(--space-6); }
  .studio-people-heading { display:block; }
  .studio-people-heading>p { margin-top:var(--space-6); }
  .studio-cast .character__caption { flex-direction:column;gap:0;font-size:var(--text-body); }
  .studio-people-note { display:block; }
  .studio-people-note button { margin-top:var(--space-3); }
  .studio-contact-top>p:last-child { display:none; }
  .studio-contact-cast { margin-top:var(--space-8); }
  .studio-footer-line { flex-wrap:wrap;gap:var(--space-2) var(--space-6); }
  .studio-footer-line>p:first-child { width:100%; }
  .studio-signoff { padding-block:var(--space-8); }
}
@media(prefers-reduced-motion:reduce) { .studio-veil { display:none!important; } .studio-wave .liquid-art,.studio-process-phrase>span { transform:none; } }
