/* The same dot construction, proportions and baseline in every signature. */
.small-signature,.hero-signature{align-items:baseline;gap:.085em;letter-spacing:-.065em}
.signature-dot{display:inline-block;flex:none;width:.115em;height:.115em;border-radius:50%;background:var(--orange);margin:0 .035em .18em;font-style:normal}
.closing-signature .signature-dot{margin-left:.045em;margin-right:0}
.book-button{background:var(--blue);border-color:var(--blue);color:var(--light);transition:background .22s,color .22s,border-color .22s}
.book-button:hover,.book-button:focus-visible{background:var(--light);border-color:var(--blue);color:var(--blue)}
.button-arrow{display:inline-block;font-size:19px;line-height:1;transition:transform .22s}.book-button:hover .button-arrow,.book-button:focus-visible .button-arrow{transform:translateX(4px)}
.book-button:focus-visible,.contact-icon:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
.hero-portrait img{object-position:50% 38%}
.about-motion{align-items:start;gap:48px}.about-race img{height:620px}.about-motion .movement-statement{font-size:clamp(40px,4.8vw,66px)}
.about-motion .movement-statement .serif{font-size:inherit}.about-motion .movement-copy{font-size:15px;line-height:1.75;margin-bottom:16px}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.project{display:flex;flex-direction:column;background:#F3EDE2;border:1px solid #D9CCB9;border-radius:3px;overflow:hidden}
.project-image{aspect-ratio:auto;height:150px;min-height:0;padding:22px;background:#E8DFD0;border-bottom:1px solid #D9CCB9}
.project-mark{height:80px;max-width:78%}.project-mark>img{max-height:74px}.project-mark .iom-mark{height:66px}
.project-copy{padding:22px}.project-copy h3{font-size:25px;margin:0 0 20px;line-height:1.15}
.project-copy .project-role-label,.project-copy .project-context-label{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);margin:0 0 6px;line-height:1.5}
.project-copy .project-context-label{border-top:1px solid #D9CCB9;padding-top:14px;margin-top:16px}
.project-copy .project-disciplines{font-size:13px;line-height:1.55;margin:0;color:var(--blue)}
.project-copy .project-description{font-size:13px;line-height:1.65;color:var(--ink);margin:0}
.case-detail{font-size:13px;margin-top:18px}.case-detail summary{font-size:12px;color:var(--blue)}
.contact h2{margin-top:0}.contact-links{display:flex;gap:12px;margin-top:24px}
.contact-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;min-height:48px;border:1px solid #193b4970;border-radius:50%;color:var(--blue);text-decoration:none;transition:background .2s}
.contact-icon svg{width:22px;height:22px}.contact-icon:hover{background:var(--light)}
.contact-icon::after{content:attr(data-label);position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%);font-size:11px;opacity:0;pointer-events:none;white-space:nowrap}
.contact-icon:hover::after,.contact-icon:focus-visible::after{opacity:1}
.site-footer{display:flex;justify-content:flex-start;gap:24px;padding-top:24px;padding-bottom:24px}.site-footer a,.site-footer button{font:inherit;font-size:12px;color:var(--muted);background:none;border:0;padding:8px 0;text-decoration:underline;cursor:pointer}
.calendar-disclosure{font-size:12px;color:var(--muted);padding:14px 24px 0;max-width:650px}.calendar-consent{padding:25px 24px 30px}.calendar-shell:not(.calendar-enabled) .duration-options,.calendar-shell:not(.calendar-enabled) .cal-container{display:none!important}
@media(max-width:1000px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-motion{gap:32px}.about-race img{height:640px}}
@media(max-width:700px){.project-grid{grid-template-columns:1fr;gap:20px}.project-image{height:128px}.project-copy{padding:20px}.project-copy h3{font-size:25px;margin-bottom:17px}.project-copy .project-description{font-size:14px}.about-race img{height:400px}.about-motion .movement-statement{font-size:46px}.header-book{gap:12px}.header-book .button-arrow{font-size:17px}.contact-links{margin-bottom:15px}}
@media(prefers-reduced-motion:reduce){.book-button,.button-arrow,.contact-icon{transition:none}}
.small-signature,.hero-signature{align-items:center;line-height:1.04}
.small-signature>span{color:var(--blue)}
.signature-dot{margin:0 .035em;transform:translateY(.045em)}
.closing-signature>span:first-child{display:flex;align-items:center;gap:.035em}
