/* The complete site continues in the same white, black and red visual language. */
html{scroll-padding-top:110px}
.site-header{background:#fff}
.motion-controls{position:fixed}
.page-continuation h2[tabindex="-1"]:focus,.intro h1[tabindex="-1"]:focus{outline:none}
.nav-cluster{display:flex;align-items:center;gap:28px;justify-self:start}
.menu-toggle{display:flex;gap:10px;align-items:center;padding:10px 0;font-size:15px;font-weight:700}
.menu-toggle-mark{font-size:23px;font-weight:400;transition:transform .3s}
.menu-toggle[aria-expanded=true] .menu-toggle-mark{transform:rotate(45deg)}
.site-menu{position:fixed;top:calc(var(--header-height) - 1px);left:0;right:0;background:#fff;z-index:9;border-bottom:1px solid #ddd;padding:36px 7% 42px;box-shadow:0 28px 45px #0000000a}
.site-menu[hidden]{display:none}
.site-menu-inner{max-width:1460px;margin:auto;display:grid;grid-template-columns:1.5fr 1fr;gap:8%}
.site-menu-links{display:grid;grid-template-columns:1fr 1fr;gap:15px 30px}
.site-menu-links>a{font-size:clamp(25px,3.4vw,48px);letter-spacing:-.045em;font-weight:700;line-height:1.2;padding:6px 0}
.site-menu-links>a:hover{color:var(--accent)}
.site-menu-note{align-self:end;font-size:18px;line-height:1.5;color:#666;max-width:320px}
.site-menu-note>a{display:block;color:#111;font-size:16px;margin-top:20px;text-decoration:underline;text-underline-offset:5px}
.page-continuation{position:relative;background:#fff}
.opening-next{position:absolute;bottom:13px;left:7.5%;z-index:3;font-size:12px;letter-spacing:.015em;color:#555;display:flex;gap:13px;align-items:center;opacity:0;visibility:hidden;transition:opacity .35s}
.opening-next span{color:var(--accent);font-size:18px}
body[data-phase=services] .opening-next{opacity:1;visibility:visible}
body[data-beyond-opening=true] .motion-controls{position:fixed;right:24px;bottom:20px;background:#fffffff2;border:1px solid #e8e8e8;border-radius:30px;padding:2px 16px;box-shadow:0 4px 18px #00000006}
body[data-beyond-opening=true] #replay{display:none}
.ig-section{max-width:1460px;width:86%;margin:0 auto;padding:120px 0 140px;border-top:1px solid #dedede;display:grid;grid-template-columns:minmax(0,1fr) minmax(326px,.95fr);gap:9%;align-items:center}
.ig-label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#696969;font-weight:700;margin:0 0 30px}
.ig-copy h2{font-size:clamp(48px,5.8vw,88px);font-weight:700;line-height:.98;letter-spacing:-.055em;margin:0 0 30px;max-width:620px}
.ig-copy h2>span{color:var(--accent)}
.ig-copy>p:not(.ig-label){font-size:clamp(18px,1.7vw,23px);line-height:1.5;color:#666;max-width:410px}
.ig-link{display:inline-flex;align-items:center;gap:32px;border-bottom:1px solid #111;padding:10px 0;font-size:18px;font-weight:700;margin-top:20px}
.ig-link span{color:var(--accent);transition:transform .25s}
.ig-link:hover span{transform:translate(3px,-3px)}
.ig-profile-line{margin-top:68px;display:flex;gap:17px;align-items:center;font-size:14px;font-weight:500;color:#555}
.ig-profile-mark{width:50px;height:50px;border:1px solid #dedede;border-radius:50%;display:grid;place-items:center;font-size:27px;font-weight:900;letter-spacing:-.08em;color:#111}
.ig-profile-mark i{display:inline-block;width:5px;height:5px;background:var(--accent);border-radius:50%;font-style:normal;margin-left:2px}
.ig-profile-line strong{display:block;color:#111;font-size:17px;margin-bottom:3px}
.ig-copy>p.ig-feed-note{font-size:13px;line-height:1.6;color:#777;margin-top:22px;max-width:360px}
.ig-feed-panel{min-width:0;width:100%;max-width:540px;justify-self:end}
.ig-feed-heading{display:flex;align-items:center;gap:10px;font-size:12px;padding:0 0 16px;color:#555}
.ig-grid-mark{font-size:21px;color:#111}
.ig-feed-heading>a{margin-left:auto;color:#111;font-weight:700;transition:color .2s}
.ig-feed-heading>a:hover{color:var(--accent)}
.service-navigation #next-service{width:auto;min-width:110px;display:flex;gap:10px;border-radius:24px;padding:0 10px}
.service-navigation #next-service span{font-size:11px;font-weight:700;white-space:nowrap}
@media(max-width:767px){.service-navigation #next-service{min-width:95px;gap:7px;padding:0 8px}.service-navigation #next-service span{font-size:10px}.service-navigation{gap:6px}.service-caption{font-size:11px}.ig-feed-panel{justify-self:center}.ig-copy>p.ig-feed-note{font-size:12px}}

.ig-embed-wrap{width:100%;max-width:540px;justify-self:end;min-width:0;position:relative;padding:12px;background:#f0f0f1;border-radius:30px;overflow:hidden}
.ig-embed-wrap .instagram-media{width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;box-shadow:none!important;border-radius:20px!important;border:1px solid #e4e4e4!important;background:#fff}
.ig-embed-wrap blockquote{min-height:530px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:35px;text-align:center;font-size:18px;line-height:1.5}
.ig-embed-wrap blockquote a{text-decoration:underline;text-underline-offset:5px;font-weight:700}
.ig-embed-wrap blockquote strong{font-size:35px;letter-spacing:-.04em}
.ig-embed-wrap>iframe{display:block;width:100%;border:0;border-radius:20px;background:#fff;min-height:580px}
.extension-reveal{opacity:1;transform:none}
.extension-reveal.is-waiting{opacity:0;transform:translateY(24px)}
.extension-reveal.is-visible{opacity:1;transform:none;transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
body[data-motion-paused=true] .extension-reveal{opacity:1!important;transform:none!important;transition:none!important}
@media(min-width:1800px){.ig-section{width:calc(100% - 14%);max-width:1640px}}
@media(max-width:1100px){.nav-cluster{gap:18px}.ig-section{gap:5%;padding:90px 0}.ig-copy h2{font-size:60px}}
@media(max-width:767px){
 html{scroll-padding-top:90px}.nav-cluster{gap:12px}.menu-toggle{font-size:13px;gap:5px}.nav-cluster .nav-services{display:none}
 .site-menu{padding:24px 6% 30px}.site-menu-inner{grid-template-columns:1fr;gap:24px}.site-menu-links{gap:8px 20px}.site-menu-links>a{font-size:29px}.site-menu-note{font-size:15px}.site-menu-note>a{margin-top:8px;font-size:15px}
 .ig-section{width:88%;padding:70px 0 80px;grid-template-columns:1fr;gap:38px}.ig-label{margin-bottom:22px}.ig-copy h2{font-size:clamp(43px,11vw,66px);margin-bottom:20px}.ig-copy>p:not(.ig-label){font-size:18px}.ig-link{font-size:16px;margin-top:8px}.ig-profile-line{margin-top:28px}.ig-embed-wrap{justify-self:center;padding:8px;border-radius:22px}.ig-embed-wrap blockquote{min-height:450px;padding:18px}.opening-next{left:5%;bottom:12px;font-size:10px;gap:7px}.motion-controls{gap:13px}
 body[data-beyond-opening=true] .motion-controls{right:12px;bottom:12px;padding:1px 12px}
}
/* Short landscape has no spare corner for floating playback controls. Their
   own header row keeps every line of the service copy unobstructed. */
@media(max-height:550px){
 .site-header{height:calc(var(--header-height) + 44px);padding-bottom:44px}
 .motion-controls,body[data-beyond-opening=true] .motion-controls{position:fixed;z-index:11;inset:var(--header-height) 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:24px;width:100%;height:44px;padding:0 6.2%;background:#fff;border:0;border-bottom:1px solid #ededed;border-radius:0;box-shadow:none}
 .motion-controls button{min-height:44px;padding:7px 0}
 .services-shell{margin-top:calc(var(--header-height) + 58px)}
 .intro{top:calc(50svh + 50px)}
 html{scroll-padding-top:calc(var(--header-height) + 64px)}
}
